Volume 32 Issue 06
Jun.  2006
Turn off MathJax
Article Contents
Liu Zhicheng, Zhou Bosheng. Software encryption and just-in-time decryption for software protection[J]. Journal of Beijing University of Aeronautics and Astronautics, 2006, 32(06): 721-724. (in Chinese)
Citation: Liu Zhicheng, Zhou Bosheng. Software encryption and just-in-time decryption for software protection[J]. Journal of Beijing University of Aeronautics and Astronautics, 2006, 32(06): 721-724. (in Chinese)

Software encryption and just-in-time decryption for software protection

  • Received Date: 15 Apr 2004
  • Publish Date: 30 Jun 2006
  • Software protection via encryption is an effective way to prevent software pirate from understanding the program by means of reverse engineering. Traditional software protection method via encryption has obvious runtime overhead and start up delay because of its one-time decryption prior to execution. Moreover, fully decrypted code can easily be obtained from memory. A novel approach, called just-in-time(JIT) decryption, was proposed. JIT decryption differs from traditional decryption method in that it decrypts only one function in a time and reveal the secret of the software step by step. The runtime JIT decipherator only decrypts called functions in a certain run of the program. The uncalled functions remain a secret for an attacker, where self-checking code can be hidden. So it is hard for an attacker to understand the entire program and thus hard to remove all the protecting code. Because decryption is scattered, the start up delay no longer exists. One-time pad based cipher further reduce the runtime overhead as compared with symmetric algorithms. JIT decryption makes encryption based software protection more applicable in practice and harder to attack.

     

  • loading
  • [1] Devanbu P, Stubblebine S.Software engineering for security, a roadmap Proceedings of the Conference on the Future of Software Engineering. New York:ACM Press,2000:227-239 [2] Schneier B. 应用密码学,协议,算法和C源程序[M].第二版. 北京:机械工业出版社,1996:11-13 Schneier B. Applied cryptography, protocols, algorithms, and source code in C . 2nd ed. Beijing:China Machine Press,1996:11-13(in Chinese) [3] AYCOCK J.A brief history of just-in-time[J].ACM Computing Surveys, 2003, 35(2):97-113 [4] Cramer T, Friedman R, Miller T, et al. Compiling Java just in time[J]. IEEE Micro, 1997,17(3):36-43 [5] Collberg C, Thomborson C. Software watermarking:models and dynamic embeddings Principles of Programming Languages. San Antonio:ACM Press, 1999:311-324 [6] Collberg C, Thomborson C. Watermarking, tamper-proofing, and obfuscation-tools for software protection[J].IEEE Transactions on Software Engineering, 2002, 28:735-746 [7] Horne B, Matheson L R, Sheehan C, et al. Dynamic self-checking techniques for improved tamper resistance Security and Privacy in Digital Rights Management, LNCS 2320. London:Springer Verlag,2001:141-159
  • 加载中

Catalog

    通讯作者: 陈斌, bchen63@163.com
    • 1. 

      沈阳化工大学材料科学与工程学院 沈阳 110142

    1. 本站搜索
    2. 百度学术搜索
    3. 万方数据库搜索
    4. CNKI搜索

    Article Metrics

    Article views(2845) PDF downloads(924) Cited by()
    Proportional views
    Related

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return