diff options
Diffstat (limited to 'lib/oracle.go')
-rw-r--r-- | lib/oracle.go | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/lib/oracle.go b/lib/oracle.go index 29338ff..8a449a1 100644 --- a/lib/oracle.go +++ b/lib/oracle.go @@ -25,38 +25,6 @@ func init() { } } -// Given an input `in`, this function AES encrypts `in` using a -// randomly generate 16-byte key using ECB or CBC mode and returns the -// cipher. -func OracleAESRandomEncrypt(in []byte) []byte { - // Generate random key. - key, err := RandomBytes(16) - if err != nil { - panic(err) - } - // Generate random initialization vector; needed for AES CBC. - iv, err := RandomBytes(16) - if err != nil { - panic(err) - } - - // Add 5-10 bytes at the beginning and end of `in` - in = append(randomBytesWithLengthBetween(5, 10), in...) - in = append(in, randomBytesWithLengthBetween(5, 10)...) - - // Randomly encrypt `in` with AES in ECB or CBC mode. - m := RandomInt(0, 1) - var out []byte - if m == 0 { - // Encrypt with AES in ECB mode. - out = AESEncryptECB(in, key) - } else { - // Encrypt with AES in CBC mode. - out = AESEncryptCBC(in, key, iv) - } - return out -} - func OracleAESEncryptECB(in []byte) []byte { return AESEncryptECB(append(in, Base64ToBytes(oracleUnknown)...), oracleKey) } |