Speed Optimizations in Bitcoin Key Recovery Attacks
|
|
|
- Irene Jordan
- 9 years ago
- Views:
Transcription
1 Speed Optimizations in Bitcoin Key Recovery Attacks Nicolas Courtois University College London Guangyan Song University College London Ryan Castellucci White Ops ABSTRACT In this paper we study and give the first detailed benchmarks on existing implementations of the secp256k1 elliptic curve used by at least hundreds of thousands of users in Bitcoin and other cryptocurrencies. Our implementation improves the state of the art by a factor of 2.5, with focus on the cases where side channel attacks are not a concern and a large quantity of RAM is available. As a result, we are able to scan the Bitcoin blockchain for weak keys faster than any previous implementation. We also give some examples of passwords which have we have cracked, showing that brain wallets are not secure in practice even for quite complex passwords. Keywords Bitcoin, Elliptic Curve Cryptography, Crypto Currency, Brain Wallet 1. INTRODUCTION Bitcoin is a cryptocurrency, an electronic payment system based on cryptography. It was created by Satoshi Nakomoto 1 in 2008 [13]. In 2009, Bitcoin was launched as opensource software. Bitcoin is designed to be a fully decentralised peer-to-peer network self-governing without support from trusted entities such as banks or governments. Bitcoin transactions are like checks but signed cryptographically instead of using ink. Transactions are broadcast to the peer-to-peer network and verified by each node. A public ledger called a blockchain records transactions pseudonymously. Ownership of bitcoins implies that a user can spend bitcoins associated with a specific address (equivalent to a bank account). In order to spend the coins, a payer must digitally sign the transaction using their private key. The signed transaction is then broadcast to the peer-to-peer network. 1 It is not known whether Satoshi Nakomoto is a real or pseudonym name or if it represents one person or a group Everyone on the network can verify the signature that has been sent out. Anyone can spend all the bitcoin in a bitcoin address as long as they hold the cosponsoring private key. Once the private is lost, the bitcoin network will not recognize any other evidence of ownership. Bitcoin uses digital signature protect the ownership bitcoin and private key is the only evidence of owning bitcoin. Thus it is very important to look at the technical details of the digital signature scheme used in bitcoin. 1.1 Structure of the paper In this paper we study and give the first detailed benchmarks on existing secp256k1 elliptic curve implementations used in Bitcoin. Section 2 introduces background knowledge about elliptic curve cryptography and brain wallets. Section 3 reviews previous research work in this area. Section 4 gives detailed benchmark for existing method and our own implementation. Our implementation improves the state of the art by a factor of 2.5. Section 5 is the conclusion of this paper. 2. BACKGROUND 2.1 Elliptic Curve Cryptography Elliptic curve cryptography (ECC) was independently proposed by Neal Koblitz[11] and Victor Miller [12] in It is a public-key cryptography protocol where each of the participant has a pair of keys. There is one private key which is kept as a secret by the owner and one public key which can be shared with anyone. In the past 10+ years ECC has been increasingly used in practise since its inclusion in standards by organisations such as ISO, IEEE, NIST, NSA etc. Elliptic curves are more efficient and offer smaller key sizes at the same security as other widely adopted public key cryptography schemes such as RSA [14]. An Elliptic Curve over finite field F p where p is a large prime, can be formed by choosing the variables a and b within the field F p. The elliptic curve includes all points (x, y) which satisfy the elliptic curve equation modulo p (where x and y are numbers in F p). It is typically defined in the short Weierstrass form: y 2 mod p = x 3 + ax + b mod p where a, b F p satisfy 4a b 2 mod p is not 0, which guarantees x 3 +ax+b contains no repeated factors and then the elliptic curve can be used to form a group. The elliptic curve contains all points P = (x, y) for x, y F p that satisfy
2 the elliptic curve equation and together with a special point call the point at infinity 2. The elliptic curve used in Bitcoin is called secp256k1. Secp256k1 curve is proposed in Certicom [7] in addition to NIST curve for 256 bits prime. It is defined over prime field F p where p = The curve equation E is y 2 = x 3 + ax + b where a = 0 and b = Key Pair Generation An elliptic curve key pair is associated with a particular set of valid domain parameters [10]. Let E be an elliptic curve defined over a finite field F p. Let P be a point in E(F p), and suppose that P has prime order n. Then the cyclic subgroup of E(F p) generated by P is P = {, P, 2P, 3P,..., (n 1)P } The prime p, the equation of the elliptic curve E, the point P and its order n are the public domain parameters. A private key is an integer d that is selected uniformly at random from the interval [1, n 1], and the corresponding public key Q = dp. Algorithm 1 Key pair generation [10] Input: Domain parameters D = (p, E, P, n) Output: Public key Q, private key d 1: Select d R [1, n 1]. 2: Compute Q = dp. 3: Return (Q, d). Note that the process of computing a private key d given public key Q is exactly the elliptic curve discrete logarithm problem (ECDLP). Hence it is very important to chose a set of domain parameters so that the ECDLP is hard to solve. In addition the number d should be random in the sense that it should have large entropy AND there should be no way to distinguish a source which produces these values from a source which generates them uniformly at random. In particular the min-entropy should also be high and there should be no efficient guessing strategy of any sort. 2.2 Brain Wallet A Bitcoin wallet is a collection of Bitcoin addresses and stores the corresponding keys for those addresses. Bitcoin wallets come in different forms, including desktop software, mobile apps, online services, hardware, smart card and paper. As we discussed earlier in section 2.1.1, the private key is a number which we presume to be totally random. Normally the private key will be a long hex string which is very hard for a person to remember and store safely. No matter what form of wallet you are using, there always exists a chance that you might lose your wallet in a cybersecurity breach. Brain wallets are another solution, which do not need the users to keep anything in safe and still be able to recover 2 In code implementation, is normally be represented as point (0,0), but not always, as (0,0) might on the curve. their private key. Instead of storing the private key and protecting it, one can store it in a human mind. A brain wallet creates private key from a (typically) human chosen password or a passphrase, using the SHA-256 hash algorithm turn it into a 256-bit number. As SHA-256 is deterministic method, users can always use the same password to recreate their private key. Note that since brain wallets use the hash directly as the private key, the security of storing private keys now depends only on how unpredictable the passwords are. 3. RELATED WORK We are not the first ones try to crack Bitcoin brain wallets, a lot of other security researchers are doing it. Many victims have found their money stolen and posted it in forums. The first ethical/research brain wallet cracker was announced publicly in a recent hacking conference DEF CON 23 (Aug 2015). Ryan Castellucci, a whitehat hacker presented his research on cracking brain wallets, and also published his software [6]. Ryan s attack was done on an Intel i7 PC with 4 hyper-threaded cores. The attack speed can reach approximately 16,250 password per second on each thread and he had cracked more than 18,000 brain wallet addresses. The software Ryan has published uses an existing open source secp256k1 bitcoin elliptic curve implementation mainly written by Pieter Wuille, one of Bitcoin core developers. This implementation is widely used in Bitcoin clients and is considered the current best in terms of code level optimisation (detailed benchmarks are given in table 2). Later Vasek et al. published their cybercrime analysis results on brain wallets addresses cracked using Ryan s software implementation in FC Their work were more focused on brain wallets usage measurements and did not try to improve the speed of the attack. 4. SPECIAL DESIGNED POINT MULTIPLI- CATION METHOD FOR ATTACK The process of cracking Bitcoin brain wallets is to repeatedly generate public keys using guessed passwords. Key generation method as we described in 2.1.1, is to compute Q = dp. Here d is a SHA256 hash of the generated password, P is a fixed point which is the base point G for secp256k1. We first benchmark the current best implementation, libsecp256k1. All benchmark results are running on a laptop with the following specifications: CPU: Intel i7-3520m 2.9GHz RAM: 4G OS: 64-bit Windows 8 The time cost for computing one public key given a random private key takes : 47.2 us. 4.1 Fixed Point Multiplication Methods The most basic and naive method for point multiplication Q = kp with a unknown point P is double-and-add method [10]. The idea is to use binary representation for k: k = k 0 + 2k k m k m where [k 0... k m] {0, 1} and m is the length of k, in bitcoin elliptic curve, m = 256.
3 Figure 1: Brain wallet generated by password password Algorithm 2 double-and-add method for point multiplication of unknown points[10] 1: Q := infinity 2: for i from 0 to m do 3: if k i = 1 then Q := Q + P (using point addition) 4: P := 2P (using point doubling) 5: end for 6: return Q The expected number of ones in the binary representation of k is approximately m, so double-and-add method 2 will need m + md computations in total. However, if the 2 point P is fixed and some storage is available, then the point multiplication operation Q = kp can be accelerated by precomputing some data that depends only on P. For example if the points 2P, 2 2 P,..., 2 m 1 P are precomputed, then the double-and-add method (algorithm 2) has expected running time ( m )A, and all doublings are eliminated. 2 In [3] the authors introduced a new method for fixed point multiplication. The precomputing step stores every multiple 2 i P. Let (K d 1,..., K 1, K 0) 2 w be the base-2 w representation of k, where d = [m/w], and let Q j = i:k i =j 2wi P for each j, 1 j 2 w 1, Then kp = d 1 i=0 2 w 1 K i(2 wi P ) = (j 2 wi P ) = j=1 i:k i =j = Q 2 w 1 + (Q 2 w 1 + Q 2 w 2) + + (Q 2 w 1 + Q 2 w Q 1) 2 w 1 j=1 jq j By reviewing the literature and checking some other existing methods in [10] we noticed they are all memory friendly implementations which do not take a lot of memory space for precomputation. However, we are working on a different task and aim to repeatedly run point multiplication method for great many times. We have implemented an extreme version of window method which will take much more precomputation space than methods introduced in [10]. In our implementation, the precomputation step will compute P j = jp where 1 j 2 w 1 then for each P j we compute P i,j = 2 wi P j, which will cost 2 w 1 times more memory space than [3, 10], but expected running time for each point multiplication will reduce to approximately (d 1)A (1) Algorithm 3 Our implementation of windowing method with larger precomputation table INPUT: Window width w, d = [m/w], k = (K d 1,..., K 1, K 0) 2 w OUTPUT: kp 1: Precompute P i,j = 2 wi jp, 0 i d 1 and 1 j 2 w 1 2: A infinity 3: for i from 0 to d 1 do 4: A A + P i,j where j = K i 5: end for 6: return A We have implemented code that can take any window width w. Results and corresponding memory usages based on different window size are shown in table Point Representation Representing a point as an affine coordinate P (x, y) on an elliptic curve over F p, the field operations for calculating point addition need 2 multiplications, 1 square and one modular inverse (for short, 2M+1S+1I). Modular inverse is more expensive operation compared to multiplication and square. We list our benchmarks using different packages in C to demonstrate the difference for modular inverse computation compared to multiplication and square. The packages we have benchmarked are: openssl-1.0.2a (released in March 2015) and mpir (released in Oct 2012), and the Pieter Wuille s implementation on Github [15] 3. The results are shown in table 2. The benchmarking shows modular inverse is much more expensive than multiplication and squaring. It is also important to notice, for MPIR big number library, the square operation is more expensive than multiplication, and for openssl library, 1 square = 0.75 multiplication. As modular inverse is more expensive than multiplication, it may be advantageous to represent points using other coordinates Projective Coordinates For elliptic curve over F p where the curve equation is y 2 = x 3 + ax + b. The standard projective coordinates represent elliptic curve points as (X : Y : Z), Z 0, correspond to the affine point ( X, Y ). The projective equation of the elliptic Z Z 3 with the following configuration: USE NUM GMP USE FIELD 10x26 USE FIELD INV NUM USE SCALAR 8x32 USE SCALAR INV BUILTIN
4 Table 1: Time cost for different window width w, point addition method secp256k1 library [15] secp256k1 gej add ge w=4 w=8 w=12 w=16 w=20 d number of additions precomputation memory KB KB 7.21 MB MB 1.09 GB time cost us us us us 9.23 us Table 2: Benchmarking openssl and MPIR library for field multiplication, square and modular inverse in affine coordinate multiplication mod p square mod p mod inverse MPIR 0.07 us 0.15 us 0.13 us 0.15 us 1.8 us openssl 0.08 us 0.43 us 0.06 us 0.43 us 18.0 us secp256k us us 1.1 us curve is: Y 2 Z = X 3 + axz 2 + bz 3 The point at infinity corresponds to (0:1:0), where the negative of (X : Y : Z) is (X : Y : Z) Jacobian Coordinates Elliptic curve points in Jacobian coordinate are represented in the following format (X : Y : Z), Z 0, corresponds to the affine point ( X Z 2, X Z 3 ). The projective equation of the elliptic curve is Y 2 = X 3 + axz 4 + bz 6 The point at infinity corresponds to (1:1:0), while the negative of (X : Y : Z) is (X : Y : Z). The field operations needed for point addition and doubling are shown in table 3. We see that Jacobian coordinates yield the fastest point doubling, while mixed Jacobian-affine coordinates yield the fastest point addition. We refer the reader to [10, 5] for other detailed equations in different coordinates. Here we only interested in point addition functions using mixed coordinates secp256k1 point addition formulas In the latest version, secp256k1 point addition formulas are based on [4] which introduced strongly unified addition formulas for standard projective coordinates. Bitcoin developers implemented a mixed coordinate formula (Jacobian- Affine) version based on [4]. Let P = (X 1 : Y 1 : Z 1) be a Jacobian projective point on elliptic curve y 2 = x 3 + ax + b, and Q = (X 2 : Y 2 : 1) be another point on the curve, suppose that P ±Q, P + Q = (X 3 : Y 3 : Z 3) is computed by the following equations: where X 3 = 4(K 2 H) Y 3 = 4(R(3H 2K 2 ) G 2 ) (2) Z 3 = 2F Z 1 A = Z 2 1, B = Z 1 A, C = X 2 A, D = Y 2 B, E = X 1 + C F = Y 1+D, G = F 2, H = E G, I = E 2, J = X 1 C, K = I J Bernstein-Lange point addition formulas In [2], Bernstein introduced the following method which take 7M+4S using Jacobian-Affine coordinate, the explicit formulas are given as follows [1] where X 3 = r 2 J 2V Y 3 = r (V X 3) 2Y 1 J Z 3 = (Z 1 + H) 2 Z 2 1 H 2 (3) U2 = X 2 Z 2 1, S2 = Y 2 Z 3 1 H = U2 X 1, I = 4H 2 J = H I, r = 2(S2 Y 1), V = X 1 I 4.3 Detailed Field Operation Benchmarks From the results of table 2 we saw that Wuille s secp256k1 library [15] has much faster field multiplication and square speed than openssl and mpir library. Wuille s field implementation is optimised based on the special prime used in secp256k1 curve. Libsecp256k1 has 5x52 and 10x26 field implementations for 64 bits and 32 bits integers 4. Here we use the 10x26 representation and each 256 bit value is represented as a 32 bit integer array with size of 10. We refer readers to file field 10x26 impl.h in libsecp256k1 for more details. Libsecp256k1 already implemented the equation from [1, 10] in method secp256k1 gej add ge var, which uses 8 multiplications, 3 squares and 12 multiply integer / addition / negation. Equation 2 is implemented in another method called secp256k1 gej add ge, which uses 7 multiplications, 5 squares and 21 multiply integer / addition / negation. We have implemented equation 3 which takes 7 multiplication, 4 squares and 22 multiply integer / addition / negation. It is important to notice the squaring and multiplication differences we discussed in table 2. In [9] Bernstein listed the best operation counts based on different assumptions: S = 0M, S = 0.2M, S= 0.67M, S=0.8M and S=1M. In [8], the author showed that the ratio S/M is almost independent of the field of definition and of the implementation, and can be reasonably taken equal to 0.8. Our benchmark results is 4 Depends on whether compiler and target support 64 bit integers
5 Table 3: Operation counts for point addition and doubling. A = affine, P = standard projective, J = Jacobian [10, 5] Doubling General addition Mixed coordinates* 2A A 1I,2M,2S A+A A 1I,2M,1S J+A J 8M,3S 2P P 7M,3S P+P P 12M,2S 2J J 4M,4S J+J J 12M,4S * Here mixed coordinates means Jacobian-Affine mixed coordinates very similar to S = 0.8M. In [1], other field operations are considered as 0M, in table 4 our benchmark results shows field addition and other operations have approximately 0.1M cost. The secp256k1 gej add ge method which is also the default method for key generation, uses 6 secp256k1 fe cmov operations which has a cost approximately 0.2 M. The rationale for writing code in this way is stated by Wuille in the following comment: This formula has the benefit of being the same for both addition of distinct points and doubling [15] The purpose of making addition and doubling using the same function is to prevent side channel attacks, as point doubling is otherwise much cheaper than point addition. Our experiments are done based on the benchmark results of S/M ratio with specified machine setting (earlier in section 4) and specific library configuration (footnote in section 4.2). Different operating systems or library configurations might have different results. One should choose between our code and secp256k1 gej add ge method. Detailed benchmark results are given in table 5 DEF CON attack [6] published code on github in August 2015 uses a faster version of secp256k1 library 5, and the results is marked as * in table 5. Our best result using 1.09 GB precomputation memory gives 2.5 times speed up for key generation process than the current known best attack. In theory the best point addition method is 7M+4S introduced in [2]. However in practice, when field multiplication and square are well optimised, other field operations (such as addition, negation) become more significant than theoretical value, see table 4. Our results show that for our laptop specification, 8M+3S method is better than 7M+4S. In order to compare the results with DEF CON attack, we also benchmark our implementation and the DEF CON released software on Amazon server. Experiments are done on an m4.4xlarge Amazon EC2 instance 6. Results are shown in table 6. The results confirm a 2.5 times improvement. Note that when running on Amazon EC2 (Intel Haswell CPU), the theoretical best method (7M+4S) performs a little bit better than 8M+3S. Based on the current price for Amazon EC2 service, we observe the following cost for implementing such brain wallet attack: 17.9 billion passwords check per US dollar; dollars to check a trillion passwords. We have found more than 18,000 passwords using this tool. Some sample passwords, 5 Also written by Pieter Wuille one year ago, this version is performance focused and using 8M+3S 6 including some quite difficult ones are listed in appendix A. 5. CONCLUSION In this paper we have analysed and improved the state of the art on the implementation of the secp256k1 elliptic curve and similar curves. We provide the first benchmarks on existing implementations and provide a faster implementation for specific applications where private keys are not manipulated or there exist other protections against side channel attacks [e.g. physical and electro-magnetic isolation] and when larger amounts of RAM are available. For example we are able to examine passwords in brain wallets 2.5 times faster than the state of the art implementation presented at DEF CON 2 months ago. We have released our source code. As an example application of this research, we have been able to crack thousands of passwords including some quite difficult ones. Our research demonstrates again that brain wallets are not secure and no one should use them. 6. REFERENCES [1] D. J. Bernstein and T. Lange. Explicit-formulas database, [2] D. J. Bernstein and T. Lange. Faster addition and doubling on elliptic curves. In Advances in cryptology ASIACRYPT 2007, pages Springer, [3] E. F. Brickell, D. M. Gordon, K. S. McCurley, and D. B. Wilson. Fast exponentiation with precomputation. In Advances in Cryptology-EUROCRYPT 92, pages Springer, [4] E. Brier and M. Joye. Weierstraß elliptic curves and side-channel attacks. In Public Key Cryptography, pages Springer, [5] M. Brown, D. Hankerson, J. López, and A. Menezes. Software implementation of the NIST elliptic curves over prime fields. Springer, [6] R. Castellucci. Cracking cryptocurrency brainwallets. https: // [7] S. Certicom. Sec 2: Recommended elliptic curve domain parameters. Proceeding of Standards for Efficient Cryptography, Version, 1, [8] H. Cohen, A. Miyaji, and T. Ono. Efficient elliptic curve exponentiation using mixed coordinates. In Advances in Cryptology ASIACRYPT 98, pages Springer, [9] T. L. Daniel J. Bernstein. Explicit-formulas database. [10] D. Hankerson, A. J. Menezes, and S. Vanstone. Guide to elliptic curve cryptography. Springer Science &
6 Table 4: Field operation counts and benchmark results #Multiplication #Square #add/neg/*int #fe cmov total time cost 1M 0.8 M 0.1 M 0.2 M secp256k1 gej add ge us secp256k1 gej add ge var us 7M + 4S code us Table 5: Time cost for different window width w for EC key generation w=4 w=8 w=12 w=16 w=20 d number of additions precomputation memory KB KB 7.21 MB MB 1.09 GB secp256k1 gej add ge us us us us 9.23 us secp256k1 gej add ge var us* us us 8.89 us 7.16 us 7M + 4S code us us us 9.23 us 7.48 us covert Jacobian to Affine 10 us Benchmark on my laptop i7-3520m 2.9 GHz CPU 42 K guesses / sec (single thread) DEF CON Attack** i GHz CPU 130 K guesses / sec Improved DEF CON attack** 315 K guesses / sec * DEF CON attack [6] is equivalent to this result ** Results are reported by Ryan Castellucci running his DEF CON code and our improved code on 8 threads with linux gcc compiler. Table 6: Benchmark with DEF CON results on Amazon EC2 instance processes passwords per second brainflayer (DEF CON) ,460 win size 20 8M+3S ,196 win size 24 8M+3S ,294 win size 24 7M+4S ,449 Business Media, [11] N. Koblitz. Elliptic curve cryptosystems. Mathematics of computation, 48(177): , [12] V. S. Miller. Use of elliptic curves in cryptography. In Advances in CryptologyâĂŤCRYPTOâĂŹ85 Proceedings, pages Springer, [13] S. Nakamoto. Bitcoin: A peer-to-peer electronic cash system. Consulted, 1(2012):28, [14] R. L. Rivest, A. Shamir, and L. Adleman. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2): , [15] P. Wuille. bitcoin secp256k1 library, version 2015/08/11. breaking competition, more than 100 new passwords were found by master students: Iason Papapanagiotakis, Jeonghyuk Park, Ellery Smith, Weixiu Tan and Wei Shao. 1. say hello to my little friend 2. to be or not to be 3. Walk Into This Room 4. party like it s yohohoandabottleofrum 6. dudewheresmycar 7. dajiahao 8. hankou 9. {1summer2leo3phoebe 10. 0racle9i 11. andreas antonopoulos 12. Arnold Schwarzenegger 13. blablablablablablabla 14. for the longest time 15. captain spaulding APPENDIX A. CRACKED PASSWORD SAMPLES Our open source tool was given to students for our code
Implementation of Elliptic Curve Digital Signature Algorithm
Implementation of Elliptic Curve Digital Signature Algorithm Aqeel Khalique Kuldip Singh Sandeep Sood Department of Electronics & Computer Engineering, Indian Institute of Technology Roorkee Roorkee, India
A SOFTWARE COMPARISON OF RSA AND ECC
International Journal Of Computer Science And Applications Vol. 2, No. 1, April / May 29 ISSN: 974-13 A SOFTWARE COMPARISON OF RSA AND ECC Vivek B. Kute Lecturer. CSE Department, SVPCET, Nagpur 9975549138
NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES
NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES Ounasser Abid 1, Jaouad Ettanfouhi 2 and Omar Khadir 3 1,2,3 Laboratory of Mathematics, Cryptography and Mechanics, Department of Mathematics, Fstm,
ECE 842 Report Implementation of Elliptic Curve Cryptography
ECE 842 Report Implementation of Elliptic Curve Cryptography Wei-Yang Lin December 15, 2004 Abstract The aim of this report is to illustrate the issues in implementing a practical elliptic curve cryptographic
Blinding Self-Certified Key Issuing Protocols Using Elliptic Curves
Blinding Self-Certified Key Issuing Protocols Using Elliptic Curves Billy Bob Brumley Helsinki University of Technology Laboratory for Theoretical Computer Science [email protected] Abstract Self-Certified
IMPLEMENTATION AND PERFORMANCE ANALYSIS OF ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM
NABI ET AL: IMPLEMENTATION AND PERFORMANCE ANALYSIS OF ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM 28 IMPLEMENTATION AND PERFORMANCE ANALYSIS OF ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM Mohammad Noor
Public Key Cryptography. Performance Comparison and Benchmarking
Public Key Cryptography Performance Comparison and Benchmarking Tanja Lange Department of Mathematics Technical University of Denmark [email protected] 28.08.2006 Tanja Lange Benchmarking p. 1 What
1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies
1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies Dave Corbett Technical Product Manager Implementing Forward Secrecy 1 Agenda Part 1: Introduction Why is Forward Secrecy important?
Elliptic Curve Cryptography
Elliptic Curve Cryptography Elaine Brow, December 2010 Math 189A: Algebraic Geometry 1. Introduction to Public Key Cryptography To understand the motivation for elliptic curve cryptography, we must first
The Mathematics of the RSA Public-Key Cryptosystem
The Mathematics of the RSA Public-Key Cryptosystem Burt Kaliski RSA Laboratories ABOUT THE AUTHOR: Dr Burt Kaliski is a computer scientist whose involvement with the security industry has been through
Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures
Outline Computer Science 418 Digital Signatures Mike Jacobson Department of Computer Science University of Calgary Week 12 1 Digital Signatures 2 Signatures via Public Key Cryptosystems 3 Provable 4 Mike
Computer Security: Principles and Practice
Computer Security: Principles and Practice Chapter 20 Public-Key Cryptography and Message Authentication First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Public-Key Cryptography
Software Tool for Implementing RSA Algorithm
Software Tool for Implementing RSA Algorithm Adriana Borodzhieva, Plamen Manoilov Rousse University Angel Kanchev, Rousse, Bulgaria Abstract: RSA is one of the most-common used algorithms for public-key
A blind digital signature scheme using elliptic curve digital signature algorithm
A blind digital signature scheme using elliptic curve digital signature algorithm İsmail BÜTÜN * and Mehmet DEMİRER *Department of Electrical Engineering, University of South Florida, Tampa, FL, USA Department
SEC 2: Recommended Elliptic Curve Domain Parameters
STANDARDS FOR EFFICIENT CRYPTOGRAPHY SEC 2: Recommended Elliptic Curve Domain Parameters Certicom Research Contact: [email protected] September 20, 2000 Version 1.0 c 2000 Certicom Corp. License
CRYPTOGRAPHY IN NETWORK SECURITY
ELE548 Research Essays CRYPTOGRAPHY IN NETWORK SECURITY AUTHOR: SHENGLI LI INSTRUCTOR: DR. JIEN-CHUNG LO Date: March 5, 1999 Computer network brings lots of great benefits and convenience to us. We can
MATH 168: FINAL PROJECT Troels Eriksen. 1 Introduction
MATH 168: FINAL PROJECT Troels Eriksen 1 Introduction In the later years cryptosystems using elliptic curves have shown up and are claimed to be just as secure as a system like RSA with much smaller key
A New Generic Digital Signature Algorithm
Groups Complex. Cryptol.? (????), 1 16 DOI 10.1515/GCC.????.??? de Gruyter???? A New Generic Digital Signature Algorithm Jennifer Seberry, Vinhbuu To and Dongvu Tonien Abstract. In this paper, we study
SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES
www.arpapress.com/volumes/vol8issue1/ijrras_8_1_10.pdf SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES Malek Jakob Kakish Amman Arab University, Department of Computer Information Systems, P.O.Box 2234,
Final Exam. IT 4823 Information Security Administration. Rescheduling Final Exams. Kerberos. Idea. Ticket
IT 4823 Information Security Administration Public Key Encryption Revisited April 5 Notice: This session is being recorded. Lecture slides prepared by Dr Lawrie Brown for Computer Security: Principles
Evaluation of Digital Signature Process
Evaluation of Digital Signature Process Emil SIMION, Ph. D. email: [email protected] Agenda Evaluation of digital signatures schemes: evaluation criteria; security evaluation; security of hash functions;
International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013
FACTORING CRYPTOSYSTEM MODULI WHEN THE CO-FACTORS DIFFERENCE IS BOUNDED Omar Akchiche 1 and Omar Khadir 2 1,2 Laboratory of Mathematics, Cryptography and Mechanics, Fstm, University of Hassan II Mohammedia-Casablanca,
Elements of Applied Cryptography Public key encryption
Network Security Elements of Applied Cryptography Public key encryption Public key cryptosystem RSA and the factorization problem RSA in practice Other asymmetric ciphers Asymmetric Encryption Scheme Let
An Efficient and Secure Key Management Scheme for Hierarchical Access Control Based on ECC
An Efficient and Secure Key Management Scheme for Hierarchical Access Control Based on ECC Laxminath Tripathy 1 Nayan Ranjan Paul 2 1Department of Information technology, Eastern Academy of Science and
Lukasz Pater CMMS Administrator and Developer
Lukasz Pater CMMS Administrator and Developer EDMS 1373428 Agenda Introduction Why do we need asymmetric ciphers? One-way functions RSA Cipher Message Integrity Examples Secure Socket Layer Single Sign
Cryptographic Algorithms and Key Size Issues. Çetin Kaya Koç Oregon State University, Professor http://islab.oregonstate.edu/koc [email protected].
Cryptographic Algorithms and Key Size Issues Çetin Kaya Koç Oregon State University, Professor http://islab.oregonstate.edu/koc [email protected] Overview Cryptanalysis Challenge Encryption: DES AES Message
ANALYSIS OF RSA ALGORITHM USING GPU PROGRAMMING
ANALYSIS OF RSA ALGORITHM USING GPU PROGRAMMING Sonam Mahajan 1 and Maninder Singh 2 1 Department of Computer Science Engineering, Thapar University, Patiala, India 2 Department of Computer Science Engineering,
Lecture 9: Application of Cryptography
Lecture topics Cryptography basics Using SSL to secure communication links in J2EE programs Programmatic use of cryptography in Java Cryptography basics Encryption Transformation of data into a form that
Secure Network Communication Part II II Public Key Cryptography. Public Key Cryptography
Kommunikationssysteme (KSy) - Block 8 Secure Network Communication Part II II Public Key Cryptography Dr. Andreas Steffen 2000-2001 A. Steffen, 28.03.2001, KSy_RSA.ppt 1 Secure Key Distribution Problem
Overview of Public-Key Cryptography
CS 361S Overview of Public-Key Cryptography Vitaly Shmatikov slide 1 Reading Assignment Kaufman 6.1-6 slide 2 Public-Key Cryptography public key public key? private key Alice Bob Given: Everybody knows
How To Encrypt Data With Encryption
USING ENCRYPTION TO PROTECT SENSITIVE INFORMATION Commonwealth Office of Technology Security Month Seminars Alternate Title? Boy, am I surprised. The Entrust guy who has mentioned PKI during every Security
Notes on Network Security Prof. Hemant K. Soni
Chapter 9 Public Key Cryptography and RSA Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender and receiver if this key is disclosed communications
Cryptography and Network Security Chapter 10
Cryptography and Network Security Chapter 10 Fifth Edition by William Stallings Lecture slides by Lawrie Brown (with edits by RHB) Chapter 10 Other Public Key Cryptosystems Amongst the tribes of Central
A Factoring and Discrete Logarithm based Cryptosystem
Int. J. Contemp. Math. Sciences, Vol. 8, 2013, no. 11, 511-517 HIKARI Ltd, www.m-hikari.com A Factoring and Discrete Logarithm based Cryptosystem Abdoul Aziz Ciss and Ahmed Youssef Ecole doctorale de Mathematiques
Lecture 13 - Basic Number Theory.
Lecture 13 - Basic Number Theory. Boaz Barak March 22, 2010 Divisibility and primes Unless mentioned otherwise throughout this lecture all numbers are non-negative integers. We say that A divides B, denoted
Public Key Cryptography: RSA and Lots of Number Theory
Public Key Cryptography: RSA and Lots of Number Theory Public vs. Private-Key Cryptography We have just discussed traditional symmetric cryptography: Uses a single key shared between sender and receiver
Performance Comparison of Elliptic Curve and RSA Digital Signatures
Performance Comparison of Elliptic Curve and RSA Digital Signatures Nicholas Jansma [[email protected]] Brandon Arrendondo [[email protected]] April 28, 2004 Abstract. This paper compares
Network Security. Chapter 6 Random Number Generation
Network Security Chapter 6 Random Number Generation 1 Tasks of Key Management (1)! Generation:! It is crucial to security, that keys are generated with a truly random or at least a pseudo-random generation
Cryptography and Network Security
Cryptography and Network Security Fifth Edition by William Stallings Chapter 9 Public Key Cryptography and RSA Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared
Number Theory. Proof. Suppose otherwise. Then there would be a finite number n of primes, which we may
Number Theory Divisibility and Primes Definition. If a and b are integers and there is some integer c such that a = b c, then we say that b divides a or is a factor or divisor of a and write b a. Definition
Number Theory and Cryptography using PARI/GP
Number Theory and Cryptography using Minh Van Nguyen [email protected] 25 November 2008 This article uses to study elementary number theory and the RSA public key cryptosystem. Various commands will
Principles of Public Key Cryptography. Applications of Public Key Cryptography. Security in Public Key Algorithms
Principles of Public Key Cryptography Chapter : Security Techniques Background Secret Key Cryptography Public Key Cryptography Hash Functions Authentication Chapter : Security on Network and Transport
CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives
CIS 6930 Emerging Topics in Network Security Topic 2. Network Security Primitives 1 Outline Absolute basics Encryption/Decryption; Digital signatures; D-H key exchange; Hash functions; Application of hash
THE ADVANTAGES OF ELLIPTIC CURVE CRYPTOGRAPHY FOR WIRELESS SECURITY KRISTIN LAUTER, MICROSOFT CORPORATION
T OPICS IN WIRELESS SECURITY THE ADVANTAGES OF ELLIPTIC CURVE CRYPTOGRAPHY FOR WIRELESS SECURITY KRISTIN LAUTER, MICROSOFT CORPORATION Q 2 = R 1 Q 2 R 1 R 1 As the wireless industry explodes, it faces
Outline. Performance comparisons of elliptic curve systems in software. Goals. 1. Elliptic curve digital signature algorithm (ECDSA)
Performance comparisons of elliptic curve systems in software Outline 1. Operations in ECDSA. Kenny Fong Darrel Hankerson Julio López Alfred Menezes Matt Tucker October 2001 University of Waterloo Auburn
CSCE 465 Computer & Network Security
CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Public Key Cryptogrophy 1 Roadmap Introduction RSA Diffie-Hellman Key Exchange Public key and
Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography (Revised)
NIST Special Publication 800-56A Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography (Revised) Elaine Barker, Don Johnson, and Miles Smid C O M P U T E R S E C
Security in Electronic Payment Systems
Security in Electronic Payment Systems Jan L. Camenisch, Jean-Marc Piveteau, Markus A. Stadler Institute for Theoretical Computer Science, ETH Zurich, CH-8092 Zurich e-mail: {camenisch, stadler}@inf.ethz.ch
COMPARISON AND EVALUATION OF DIGITAL SIGNATURE SCHEMES EMPLOYED IN NDN NETWORK
COMPARISON AND EVALUATION OF DIGITAL SIGNATURE SCHEMES EMPLOYED IN NDN NETWORK Al Imem Ali 1 1 PRINCE ISITC, H. Sousse University of Sousse, 4011 Hammam Sousse, Tunisia ABSTRACT It is well known that Named
Discrete Mathematics, Chapter 4: Number Theory and Cryptography
Discrete Mathematics, Chapter 4: Number Theory and Cryptography Richard Mayr University of Edinburgh, UK Richard Mayr (University of Edinburgh, UK) Discrete Mathematics. Chapter 4 1 / 35 Outline 1 Divisibility
Capture Resilient ElGamal Signature Protocols
Capture Resilient ElGamal Signature Protocols Hüseyin Acan 1, Kamer Kaya 2,, and Ali Aydın Selçuk 2 1 Bilkent University, Department of Mathematics [email protected] 2 Bilkent University, Department
RSA Encryption. Tom Davis [email protected] http://www.geometer.org/mathcircles October 10, 2003
RSA Encryption Tom Davis [email protected] http://www.geometer.org/mathcircles October 10, 2003 1 Public Key Cryptography One of the biggest problems in cryptography is the distribution of keys.
A NOVEL STRATEGY TO PROVIDE SECURE CHANNEL OVER WIRELESS TO WIRE COMMUNICATION
A NOVEL STRATEGY TO PROVIDE SECURE CHANNEL OVER WIRELESS TO WIRE COMMUNICATION Prof. Dr. Alaa Hussain Al- Hamami, Amman Arab University for Graduate Studies [email protected] Dr. Mohammad Alaa Al-
Implementing Network Security Protocols
Implementing Network Security Protocols based on Elliptic Curve Cryptography M. Aydos, E. Savaş, and Ç. K. Koç Electrical & Computer Engineering Oregon State University Corvallis, Oregon 97331, USA {aydos,savas,koc}@ece.orst.edu
Public Key Cryptography. c Eli Biham - March 30, 2011 258 Public Key Cryptography
Public Key Cryptography c Eli Biham - March 30, 2011 258 Public Key Cryptography Key Exchange All the ciphers mentioned previously require keys known a-priori to all the users, before they can encrypt
Constructing Pairing-Friendly Elliptic Curves with Embedding Degree 10
with Embedding Degree 10 University of California, Berkeley, USA ANTS-VII, 2006 Outline 1 Introduction 2 The CM Method: The Basic Construction The CM Method: Generating Families of Curves 3 Outline 1 Introduction
Network Security. Chapter 2 Basics 2.2 Public Key Cryptography. Public Key Cryptography. Public Key Cryptography
Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle Encryption/Decryption using Public Key Cryptography Network Security Chapter 2 Basics 2.2 Public Key Cryptography
SAS Data Set Encryption Options
Technical Paper SAS Data Set Encryption Options SAS product interaction with encrypted data storage Table of Contents Introduction: What Is Encryption?... 1 Test Configuration... 1 Data... 1 Code... 2
Randomized Hashing for Digital Signatures
NIST Special Publication 800-106 Randomized Hashing for Digital Signatures Quynh Dang Computer Security Division Information Technology Laboratory C O M P U T E R S E C U R I T Y February 2009 U.S. Department
Elliptic Curve Hash (and Sign)
Elliptic Curve Hash (and Sign) (and the 1-up problem for ECDSA) Daniel R. L. Brown Certicom Research ECC 2008, Utrecht, Sep 22-24 2008 Dan Brown (Certicom) Elliptic Curve Hash (and Sign) ECC 2008 1 / 43
Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23
Network Security Computer Networking Lecture 08 HKU SPACE Community College March 19, 2012 HKU SPACE CC CN Lecture 08 1/23 Outline Introduction Cryptography Algorithms Secret Key Algorithm Message Digest
An Approach to Shorten Digital Signature Length
Computer Science Journal of Moldova, vol.14, no.342, 2006 An Approach to Shorten Digital Signature Length Nikolay A. Moldovyan Abstract A new method is proposed to design short signature schemes based
Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and
Breaking The Code Ryan Lowe Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and a minor in Applied Physics. As a sophomore, he took an independent study
Table of Contents. Bibliografische Informationen http://d-nb.info/996514864. digitalisiert durch
1 Introduction to Cryptography and Data Security 1 1.1 Overview of Cryptology (and This Book) 2 1.2 Symmetric Cryptography 4 1.2.1 Basics 4 1.2.2 Simple Symmetric Encryption: The Substitution Cipher...
High-speed high-security cryptography on ARMs
High-speed high-security cryptography on ARMs Daniel J. Bernstein Research Professor, University of Illinois at Chicago Professor, Cryptographic Implementations, Technische Universiteit Eindhoven Tanja
Index Calculation Attacks on RSA Signature and Encryption
Index Calculation Attacks on RSA Signature and Encryption Jean-Sébastien Coron 1, Yvo Desmedt 2, David Naccache 1, Andrew Odlyzko 3, and Julien P. Stern 4 1 Gemplus Card International {jean-sebastien.coron,david.naccache}@gemplus.com
FAREY FRACTION BASED VECTOR PROCESSING FOR SECURE DATA TRANSMISSION
FAREY FRACTION BASED VECTOR PROCESSING FOR SECURE DATA TRANSMISSION INTRODUCTION GANESH ESWAR KUMAR. P Dr. M.G.R University, Maduravoyal, Chennai. Email: [email protected] Every day, millions of people
Software Implementations of Elliptic Curve Cryptography
Software Implementations of Elliptic Curve Cryptography Zhijie Jerry Shi and Hai Yan Computer Science and Engineering Department University of Connecticut, Storrs, CT 06269, USA Email: {zshi, hai.yan}@engr.uconn.edu
Crittografia e sicurezza delle reti. Digital signatures- DSA
Crittografia e sicurezza delle reti Digital signatures- DSA Signatures vs. MACs Suppose parties A and B share the secret key K. Then M, MAC K (M) convinces A that indeed M originated with B. But in case
A New Efficient Digital Signature Scheme Algorithm based on Block cipher
IOSR Journal of Computer Engineering (IOSRJCE) ISSN: 2278-0661, ISBN: 2278-8727Volume 7, Issue 1 (Nov. - Dec. 2012), PP 47-52 A New Efficient Digital Signature Scheme Algorithm based on Block cipher 1
Pulse Secure, LLC. January 9, 2015
Pulse Secure Network Connect Cryptographic Module Version 2.0 Non-Proprietary Security Policy Document Version 1.1 Pulse Secure, LLC. January 9, 2015 2015 by Pulse Secure, LLC. All rights reserved. May
A Survey of the Elliptic Curve Integrated Encryption Scheme
JOURNAL OF COMPUTER SCIENCE AND ENGINEERING, VOLUME, ISSUE, AUGUST 010 A Survey of the Elliptic Curve Integrated Encryption Scheme 7 V. Gayoso Martínez, L. Hernández Encinas, and C. Sánchez Ávila Abstract
High-Performance Modular Multiplication on the Cell Processor
High-Performance Modular Multiplication on the Cell Processor Joppe W. Bos Laboratory for Cryptologic Algorithms EPFL, Lausanne, Switzerland [email protected] 1 / 19 Outline Motivation and previous work
Digital Signature Standard (DSS)
FIPS PUB 186-4 FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION Digital Signature Standard (DSS) CATEGORY: COMPUTER SECURITY SUBCATEGORY: CRYPTOGRAPHY Information Technology Laboratory National Institute
Cryptography and Key Management Basics
Cryptography and Key Management Basics Erik Zenner Technical University Denmark (DTU) Institute for Mathematics [email protected] DTU, Oct. 23, 2007 Erik Zenner (DTU-MAT) Cryptography and Key Management
RSA Attacks. By Abdulaziz Alrasheed and Fatima
RSA Attacks By Abdulaziz Alrasheed and Fatima 1 Introduction Invented by Ron Rivest, Adi Shamir, and Len Adleman [1], the RSA cryptosystem was first revealed in the August 1977 issue of Scientific American.
Enhancing Security of Cloud Computing using Elliptic Curve Cryptography
Enhancing Security of Cloud Computing using Elliptic Curve Cryptography Abhuday Tripathi MTech Amity University Lucknow Parul Yadav Sr.Lecturer Amity University Lucknow ABSTRACT Cloud computing is a form
Performance Investigations. Hannes Tschofenig, Manuel Pégourié-Gonnard 25 th March 2015
Performance Investigations Hannes Tschofenig, Manuel Pégourié-Gonnard 25 th March 2015 1 Motivation In we tried to provide guidance for the use of DTLS (TLS) when used in
HTTPS is Fast and Hassle-free with CloudFlare
HTTPS is Fast and Hassle-free with CloudFlare 1 888 99 FLARE [email protected] www.cloudflare.com In the past, organizations had to choose between performance and security when encrypting their
Distributed Public Key Infrastructure via the Blockchain. Sean Pearl [email protected] April 28, 2015
Distributed Public Key Infrastructure via the Blockchain Sean Pearl [email protected] April 28, 2015 Overview Motivation: Electronic Money Example TTP: PayPal Bitcoin (BTC) Background Structure Other
Digital Signature. Raj Jain. Washington University in St. Louis
Digital Signature Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 [email protected] Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-11/
The Impact of Cryptography on Platform Security
The Impact of Cryptography on Platform Security Ernie Brickell Intel Corporation 2/28/2012 1 Security is Intel s Third Value Pillar Intel is positioning itself to lead in three areas: energy-efficient
Improved Online/Offline Signature Schemes
Improved Online/Offline Signature Schemes Adi Shamir and Yael Tauman Applied Math. Dept. The Weizmann Institute of Science Rehovot 76100, Israel {shamir,tauman}@wisdom.weizmann.ac.il Abstract. The notion
On Binary Signed Digit Representations of Integers
On Binary Signed Digit Representations of Integers Nevine Ebeid and M. Anwar Hasan Department of Electrical and Computer Engineering and Centre for Applied Cryptographic Research, University of Waterloo,
Applied Cryptography Public Key Algorithms
Applied Cryptography Public Key Algorithms Sape J. Mullender Huygens Systems Research Laboratory Universiteit Twente Enschede 1 Public Key Cryptography Independently invented by Whitfield Diffie & Martin
CERTIFICATE AUTHORITY SCHEMES USING ELLIPTIC CURVE CRYPTOGRAPHY, RSA AND THEIR VARIANTS- SIMULATION USING NS2
American Journal of Applied Sciences 11 (2): 171-179, 2014 ISSN: 1546-9239 2014 Science Publication doi:10.3844/ajassp.2014.171.179 Published Online 11 (2) 2014 (http://www.thescipub.com/ajas.toc) CERTIFICATE
The application of prime numbers to RSA encryption
The application of prime numbers to RSA encryption Prime number definition: Let us begin with the definition of a prime number p The number p, which is a member of the set of natural numbers N, is considered
Computer and Network Security
MIT 6.857 Computer and Networ Security Class Notes 1 File: http://theory.lcs.mit.edu/ rivest/notes/notes.pdf Revision: December 2, 2002 Computer and Networ Security MIT 6.857 Class Notes by Ronald L. Rivest
FIPS 140-2 Non- Proprietary Security Policy. McAfee SIEM Cryptographic Module, Version 1.0
FIPS 40-2 Non- Proprietary Security Policy McAfee SIEM Cryptographic Module, Version.0 Document Version.4 December 2, 203 Document Version.4 McAfee Page of 6 Prepared For: Prepared By: McAfee, Inc. 282
WRITING PROOFS. Christopher Heil Georgia Institute of Technology
WRITING PROOFS Christopher Heil Georgia Institute of Technology A theorem is just a statement of fact A proof of the theorem is a logical explanation of why the theorem is true Many theorems have this
An Introduction to Cryptography as Applied to the Smart Grid
An Introduction to Cryptography as Applied to the Smart Grid Jacques Benoit, Cooper Power Systems Western Power Delivery Automation Conference Spokane, Washington March 2011 Agenda > Introduction > Symmetric
Secure Network Communications FIPS 140 2 Non Proprietary Security Policy
Secure Network Communications FIPS 140 2 Non Proprietary Security Policy 21 June 2010 Table of Contents Introduction Module Specification Ports and Interfaces Approved Algorithms Test Environment Roles
High-speed cryptography and DNSCurve. D. J. Bernstein University of Illinois at Chicago
High-speed cryptography and DNSCurve D. J. Bernstein University of Illinois at Chicago Stealing Internet mail: easy! Given a mail message: Your mail software sends a DNS request, receives a server address,
Ashraf Abusharekh Kris Gaj Department of Electrical & Computer Engineering George Mason University
COMPARATIVE ANALYSIS OF SOFTWARE LIBRARIES FOR PUBLIC KEY CRYPTOGRAPHY Ashraf Abusharekh Kris Gaj Department of Electrical & Computer Engineering George Mason University 1 OBJECTIVE Evaluation of Multi-precision
