Encrypted function: Difference between revisions
No edit summary |
m wording, punctuation |
||
Line 3: | Line 3: | ||
*should run autonomously. |
*should run autonomously. |
||
[[polynomial function|Polynomial]] and [[rational function]]s are [[encrypted]] such that their transformation can again be implemented as programs consisting of [[cleartext]] instructions that a [[central processing unit|processor]] or [[interpreter (computing)|interpreter]] understands. The processor would |
[[polynomial function|Polynomial]] and [[rational function]]s are [[encrypted]] such that their transformation can again be implemented as programs consisting of [[cleartext]] instructions that a [[central processing unit|processor]] or [[interpreter (computing)|interpreter]] understands. The processor would not understand the program's function. This field of study is gaining popularity as ''mobile cryptography''. |
||
==Example== |
==Example== |
||
'''Scenario:''' |
'''Scenario:''' |
||
Host ''A'', has an [[algorithm]] which computes function ''f''. ''A'' wants to send its [[mobile agent]] to ''B'' which holds input ''x'', to compute ''f''(''x''). But ''A'' |
Host ''A'', has an [[algorithm]] which computes function ''f''. ''A'' wants to send its [[mobile agent]] to ''B'' which holds input ''x'', to compute ''f''(''x''). But ''A'' doesn't want ''B'' to learn anything about ''f''. |
||
'''Scheme:''' |
'''Scheme:''' |
||
Line 14: | Line 14: | ||
'''Drawbacks:''' |
'''Drawbacks:''' |
||
Finding appropriate encryption schemes that can transform arbitrary functions is a challenge. The scheme |
Finding appropriate encryption schemes that can transform arbitrary functions is a challenge. The scheme doesn't prevent [[denial of service]], replay, [[experimental extraction]] and others. |
||
==References== |
==References== |
Revision as of 21:53, 29 September 2008
An encrypted function is an attempt to provide mobile code privacy without providing any tamper-resistant hardware. It is a method where in mobile code can carry out cryptographic primitives even though the code
- is executed in untrusted environments.
- should run autonomously.
Polynomial and rational functions are encrypted such that their transformation can again be implemented as programs consisting of cleartext instructions that a processor or interpreter understands. The processor would not understand the program's function. This field of study is gaining popularity as mobile cryptography.
Example
Scenario: Host A, has an algorithm which computes function f. A wants to send its mobile agent to B which holds input x, to compute f(x). But A doesn't want B to learn anything about f.
Scheme: Function f is encrypted in a way that results in E(f). Host A then creates another program P(E(f)), which implements E(f), and sends it to B through its agent. B then runs the agent, which computes P(E(f))(x) and returns the result to A. A then decrypts this to get f(x).
Drawbacks: Finding appropriate encryption schemes that can transform arbitrary functions is a challenge. The scheme doesn't prevent denial of service, replay, experimental extraction and others.
References
- Thomas Sander and Christian F. Tschudin. Protecting Mobile Agents Against Malicious Hosts. In G. Vigna, editor, Mobile agents and security, volume 1419 of Lecture Notes in Computer Science, pages 44--60. Springer-Verlag, New York, NY, 1998. [1]