Unformatted text preview:

Security ApplicationsAbhyudaya ChodisettiPaul Wang LeeGarrett SmithEE392C Application Studies 2Cryptography• Encryption• Integrity : MAC(message authentication code)• Digital signatures• Authentication• Extended applications– Electronic cash– Electronic voting– Secure auctions– Copyright protectionEE392C Application Studies 3Major Components• Block Ciphers–DES, AES• Secure hash functions–SHA-1• Public key encryption–RSAEE392C Application Studies 4DESEE392C Application Studies 5Chaining • DES and AES both work on data blocks, 64 and 128bits respectively• Most commonly used way of encrypting longer messages is CBC(Cipher Block Chaining), due to security properties• Introduces serial dependency, limiting parallelismEE392C Application Studies 6Properties of DES/AES• Data size / access patterns– Relatively small lookup tables (2K for DES)– For encryption, data size is arbitrarily large– Working set is small• Intermediate values are only used once and then discarded• Input data is used in a streaming pattern• Algorithm complexity is constant w.r.t. data• Constant workload distribution over timeEE392C Application Studies 7Software implementations• Ratio of arithmetic to memory operations– Per block # of alu/memory operations :520/192 for DES, 507/111 for AES– Ratios are 2.7 for DES, 4.56 for AES• DES is inefficient in software due to extensive use of bit-level permutation• AES is designed to be more amenable to software implementationsEE392C Application Studies 8Hashing functions• SHA-1– 232 memory operations– 2879 other operations– Ratio of 12 alu/mem operations• Reasonable amount of ILP compared to block ciphersEE392C Application Studies 9RSA (Public Key Encryption)• Based on properties of modular arithmetic• Two keys : private key d, public key e• Encryption : C = Pemod M• Decryption : P = Cdmod M• Uses property that d and e are chosen such that xde= x mod MEE392C Application Studies 10RSA properties• Key sizes : two 2048 bit integers• Message size : 2048 bit integer• Scales with O(k3) with efficient implementation ( k: # key bits )• Fast modular exponentiation required : multiplication and division• In one software implementation, ratio of alu to memory operations is 1EE392C Application Studies 11Scaling trends• Small number of very conservative standards• Rate of change is slow (AES targeted for use during next 20 years)– Makes sense to embed special purpose hardware if performance is important• Available scaling comes from : Number of requests per time and data size will increaseEE392C Application Studies 12Custom hardware• Custom ASIC’s for DES/AES• Cryptography coprocessors– Includes HW implementation of DES/AES– Modular arithmetic modules for RSAEE392C Application Studies 13Conclusion• Special purpose modules are a good idea for cryptography applications• Major scaling direction for cryptographic applications will be independent thread


View Full Document

Stanford EE 392C - Security Applications

Download Security Applications
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Security Applications and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Security Applications 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?