HOME
*





Joe-E
Joe-E is a subset of the Java programming language intended to support programming according to object-capability discipline. The language is notable for being an early object-capability subset language. It has influenced later subset languages, such as ADsafe and Caja/Cajita, subsets of Javascript. It is also notable for allowing methods to be verified as functionally pure, based on their method signatures.Verifiable Functional Purity in Java
Matthew Finifter, Adrian Mettler, Naveen Sastry, David Wagner; October 2008, Conference on Computer and Communications Security. The restrictions imposed by the Joe-E verifier include: * Classes may not have mutable static fields, because these create global state. * Catching out-of-memory exceptions is prohibited, because doing so allows non-deterministic execution. For t ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Object-capability Model
The object-capability model is a computer security model. A capability describes a transferable right to perform one (or more) operations on a given object. It can be obtained by the following combination: :* An unforgeable reference (in the sense of object references or protected pointers) that can be sent in messages. :* A message that specifies the operation to be performed. The security model relies on not being able to forge references. :* Objects can interact only by sending messages on references. :* A reference can be obtained by: ::# Initial conditions: In the initial state of the computational world being described, object A may already have a reference to object B. ::# Parenthood: If A creates B, at that moment A obtains the only reference to the newly created B. ::# Endowment: If A creates B, B is born with that subset of A's references with which A chose to endow it. ::# Introduction: If A has references to both B and C, A can send to B a message containing a referen ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Object-capability Model
The object-capability model is a computer security model. A capability describes a transferable right to perform one (or more) operations on a given object. It can be obtained by the following combination: :* An unforgeable reference (in the sense of object references or protected pointers) that can be sent in messages. :* A message that specifies the operation to be performed. The security model relies on not being able to forge references. :* Objects can interact only by sending messages on references. :* A reference can be obtained by: ::# Initial conditions: In the initial state of the computational world being described, object A may already have a reference to object B. ::# Parenthood: If A creates B, at that moment A obtains the only reference to the newly created B. ::# Endowment: If A creates B, B is born with that subset of A's references with which A chose to endow it. ::# Introduction: If A has references to both B and C, A can send to B a message containing a referen ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Caja Project
Caja (pronounced ) was a Google project for sanitizing third party HTML, CSS and JavaScript. On January 31, 2021, Google archived the project due to known vulnerabilities and lack of maintenance to keep up with the latest web security research, recommending instead the Closure toolkit. Caja was designed by Google research scientist Mark S. Miller in 2008 as a JavaScript implementation for "virtual iframes" based on the principles of object-capabilities. It would take JavaScript (technically, ECMAScript 5 strict mode code), HTML, and CSS input and rewrite it into a safe subset of HTML and CSS, plus a single JavaScript function with no free variables. That means the only way such a function could modify an object, was if it was given a reference to the object by the host page. Instead of giving direct references to DOM objects, the host page typically gives references to wrappers that sanitize HTML, proxy URLs, and prevent redirecting the page; this allowed Caja to prevent cert ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Mark S
Mark may refer to: Currency * Bosnia and Herzegovina convertible mark, the currency of Bosnia and Herzegovina * East German mark, the currency of the German Democratic Republic * Estonian mark, the currency of Estonia between 1918 and 1927 * Finnish markka ( sv, finsk mark, links=no), the currency of Finland from 1860 until 28 February 2002 * Mark (currency), a currency or unit of account in many nations * Polish mark ( pl, marka polska, links=no), the currency of the Kingdom of Poland and of the Republic of Poland between 1917 and 1924 German * Deutsche Mark, the official currency of West Germany from 1948 until 1990 and later the unified Germany from 1990 until 2002 * German gold mark, the currency used in the German Empire from 1873 to 1914 * German Papiermark, the German currency from 4 August 1914 * German rentenmark, a currency issued on 15 November 1923 to stop the hyperinflation of 1922 and 1923 in Weimar Germany * Lodz Ghetto mark, a special currency for Lodz Ghetto. * ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

David A
David (; , "beloved one") (traditional spelling), , ''Dāwūd''; grc-koi, Δαυΐδ, Dauíd; la, Davidus, David; gez , ዳዊት, ''Dawit''; xcl, Դաւիթ, ''Dawitʿ''; cu, Давíдъ, ''Davidŭ''; possibly meaning "beloved one". was, according to the Hebrew Bible, the third king of the United Kingdom of Israel. In the Books of Samuel, he is described as a young shepherd and harpist who gains fame by slaying Goliath, a champion of the Philistines, in southern Canaan. David becomes a favourite of Saul, the first king of Israel; he also forges a notably close friendship with Jonathan, a son of Saul. However, under the paranoia that David is seeking to usurp the throne, Saul attempts to kill David, forcing the latter to go into hiding and effectively operate as a fugitive for several years. After Saul and Jonathan are both killed in battle against the Philistines, a 30-year-old David is anointed king over all of Israel and Judah. Following his rise to power, David ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Java (programming Language)
Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let programmers ''write once, run anywhere'' ( WORA), meaning that compiled Java code can run on all platforms that support Java without the need to recompile. Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of the underlying computer architecture. The syntax of Java is similar to C and C++, but has fewer low-level facilities than either of them. The Java runtime provides dynamic capabilities (such as reflection and runtime code modification) that are typically not available in traditional compiled languages. , Java was one of the most popular programming languages in use according to GitHub, particularly for client–server web applications, with a reported 9 million developers. Java was originally developed ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


E (programming Language)
E is an object-oriented programming language for secure distributed computing, created by Mark S. Miller, Dan Bornstein, Douglas Crockford, Chip Morningstar and others at Electric Communities in 1997. E is mainly descended from the concurrent language Joule and from Original-E, a set of extensions to Java for secure distributed programming. E combines message-based computation with Java-like syntax. A concurrency model based on event loops and promises ensures that deadlock can never occur. Philosophy The E language is designed with secure computing in mind; this is accomplished chiefly by strict adherence to the object-oriented computing model, which in its pure form has properties that support secure computing. The E language and its standard library employ a capability-based design philosophy throughout in order to help programmers build secure software and to enable software components to co-operate even if they don't fully trust each other. In E, object references s ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Pure Function
In computer programming, a pure function is a function that has the following properties: # the function return values are identical for identical arguments (no variation with local static variables, non-local variables, mutable reference arguments or input streams), and # the function has no side effects (no mutation of local static variables, non-local variables, mutable reference arguments or input/output streams). Thus a pure function is a computational analogue of a mathematical function. Some authors, particularly from the imperative language community, use the term "pure" for all functions that just have the above property 2 (discussed below). Examples Pure functions The following examples of C++ functions are pure: Impure functions The following C++ functions are impure as they lack the above property 1: The following C++ functions are impure as they lack the above property 2: The following C++ functions are impure as they lack both the above properties 1 and ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Capability Systems
A capability is the ability to execute a specified course of action or to achieve certain outcomes. As it applies to human capital, capability represents performing or achieving certain actions/outcomes in terms of the intersection of capacity and ability. Capability may also refer to: Engineering * Capability (systems engineering), the ability to execute a specified course of action * Capability management, integrative management function in the defense sector Computing * Capability-based addressing, scheme used by some computers to control access to memory * Capability-based security, concept in the design of secure computing systems Economics * Capability Maturity Model, a development model * Capability Maturity Model Integration, a process improvement training and appraisal program * Dynamic capabilities, theory in organizational sciences * Capability management in business, capacity, materials, and expertise an organization needs in order to perform core functions * Ca ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]