Abstract
Intellectual property (IP) reuse based design is one of the most promising techniques to close the so-called design productivity gap. To facilitate better IP reuse, it is desirable to have IPs exchanged in the soft form such as hardware description language (HDL) source codes. However, soft IPs have higher protection requirements than hard IPs and most existing IP protection techniques are not applicable to soft IPs. In this paper, we describe the basic requirements, make the necessary assumptions, and propose several practical schemes for HDL code protection.
We protect the HDL codes by hiding author’s signature also called as watermarking, similar to the idea for hard IP and multimedia data protection. But the new challenge is how to embed watermark into HDL source codes, which must be properly documented and synthesizable for reuse. We leverage the unique feature of Verilog HDL design to develop several watermarking techniques. These techniques can protect both new and existing Verilog designs. We watermark SCU-RTL & ISCAS benchmark Verilog circuits, as well as a MP3 decoder. Both original and watermarked designs are implemented on ASICs & FPGAs. The results show that the proposed techniques survive the commercial synthesis tools and cause little design overhead in terms of area/resources, delay and power.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Arboit, G.: A Method for Watermarking Java Programs via Opaque Predicates (Extended Abstract). In: The Fifth International Conference on Electronic Commerce Research, ICECR-5 (2002)
Collberg, C., Myles, G., Huntwork, A.: SandMark — A Tool for Software Protection Research. IEEE Magazine of Security and Privacy 1 (August 2003)
Collberg, C.S., Thomborson, C.: Watermarking, tamper-proofing, and obfuscation – tools for software protection. IEEE Transactions on Software Engineering 8(8) (2002)
Collberg, C.S., Thomborson, C.: Software Watermarking Models and Dynamic Embeddings. In: ACM Symposium on Principles of Programming Languages (January 1999)
Cousot, P., Cousot, R.: An Abstract Interpretation-Based Framework for Software Watermarking. ACM Principles of Programming Languages (2004)
Davidson, R.L., Myhrvold, N.: Method and System for Generating and Auditing a Signature for a Computer Program, US Patent 5,559,884, Assignee: Microsoft Corporation (1996)
Hong, I., Potkonjak, M.: Behavioral Synthesis Techniques for Intellectual Property Protection. In: 36th ACM/IEEE Design Automation Conference Proceedings, June 1999, pp. 849–854 (1999)
Kahng, A.B., et al.: Watermarking Techniques for Intellectual Property Protection. In: 35th ACM/IEEE Design Automation Conference Proceedings, June 1998, pp. 776–781 (1998)
Kirovski, D., Hwang, Y., Potkonjak, M., Cong, J.: Intellectual Property Protection by Watermarking Combinational Logic Synthesis Solutions. In: IEEE/ACM International Conference on Computer Aided Design, pp. 194–198 (November 1998)
Keating, M., Bricaud, P.: Reuse Methodology Manual, For System-On-A-Chip Designs, 2nd edn (1999)
Lach, J., Mangione-Smith, W.H., Potkonjak, M.: FPGA Fingerprinting Techniques for Protecting Intellectual Property. In: Proceedings of the IEEE 1998 Custom Integrated Circuits Conference, May 1998, pp. 299–302 (1998)
Myles, G., Collberg, C.: Software Watermarking Through Register Allocation: Implementation, Analysis, and Attacks. In: International Conference on Information Security and Cryptology (2003)
Monden, A., Iida, H., Matsumoto, K., Inoue, K., Torii, K.: A practical method for watermarking Java programs. In: 24th Computer Software and Applications Conference (2000)
Oliveira, A.L.: Robust Techniques for Watermarking Sequential Circuit Designs. In: 36th ACM/IEEE Design Automation Conference Proceedings, June 1999, pp. 837–842 (1999)
Palsberg, J., Krishnaswamy, S., Kwon, M., Ma, D., Shao, Q., Zhang, Y.: Experience with Software Watermarking. In: Proceedings of ACSAC 2000, 16th Annual Computer Security Applications Conference, pp. 308–316 (2000)
Qu, G., Potkonjak, M.: Analysis of watermarking techniques for graph coloring problem. In: Proceedings of the 1998 IEEE/ACM international conference on Computer-aided design, pp. 190–193 (1998)
Qu, G., Potkonjak, M.: Fingerprinting intellectual property using constraintaddition. In: Design Automation Conference, pp. 587–592 (2000)
Stern, J.P., Hachez, G., Koeune, F., Quisquater, J.-J.: Robust Object watermarking: Application to code. In: Information Hiding, pp. 368–378 (1999)
Venkatesan, R., Vazirani, V., Sinha, S.: A Graph Theoretic Approach to Software Watermarking. In: 4th International Information Hiding Workshop, Pittsburgh, PA (April 2001)
Venkatesan, R., Vazirani, V.: A Technique For Producing, Through Watermarking, Highly Tamper-Resistant Executable Code And Resulting ”Watermarked” Code So Formed, International Patent WO 01/69355 A1 (2001)
Altera Corporation. San Jose, California, http://www.altera.com/
Xilinx Inc. San Jose, California, http://www.xilinx.com
Virtual Socket Interface Alliance. ”Intellectual Property Protection White Paper: Schemes, Alternatives and Discussion Version 1.0,” (September 2000)
Virtual Socket Interface Alliance. Architecture Document Version 1.0 (March 1997)
International Technology Roadmap for Semiconductors, http://public.itrs.net/Files/2001ITRS/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yuan, L., Pari, P.R., Qu, G. (2004). Soft IP Protection: Watermarking HDL Codes. In: Fridrich, J. (eds) Information Hiding. IH 2004. Lecture Notes in Computer Science, vol 3200. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30114-1_16
Download citation
DOI: https://doi.org/10.1007/978-3-540-30114-1_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-24207-9
Online ISBN: 978-3-540-30114-1
eBook Packages: Computer ScienceComputer Science (R0)