Computer Security Resource Center

Computer Security Resource Center

Computer Security
Resource Center

Cryptographic Algorithm Validation Program

Description
The Bouncy Castle FIPS Java API is a comprehensive suite of FIPS Approved algorithms implemented in pure Java. All key sizes and modes have been implemented to allow flexibility and efficiency, and additional algorithms are available in non-approved operation as well.
Version
1.0.1
Type
SOFTWARE
Vendor
Legion of the Bouncy Castle Inc.
85 The Crescent
Ascot Vale, Victoria 3032
Australia
Contacts
David Hook
dgh@bouncycastle.org
+61438170390
Jon Eaves
jon@bouncycastle.org
+61417502969

Validations

Number
Date
Operating Environments
Algorithm Capabilities
AES 4759
9/1/2017
  • Java SE Runtime Environment 7 on Red Hat Enterprise Linux 7.3 on VMware ESXi 5.5 on Intel Xeon Processor X5670
  • Java SE Runtime Environment 8 on Red Hat Enterprise Linux 7.3 on VMware ESXi 5.5 on Intel Xeon Processor X5670
  • AES-CBC
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CCM
    • Key Length: 128, 192, 256
    • Tag Length: 32, 48, 64, 80, 96, 112, 128
    • IV Length: 56, 64, 72, 80, 88, 96, 104
    • Payload Length: 0-256
    • AAD Length: 0-524288
  • AES-CFB128
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CFB8
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CMAC
      • Capabilities:
        • Direction: Generation, Verification
        • Key Length: 128, 192, 256
        • MAC: 8-128
        • Message Length: 0-524288
        • Block Size: Full, Partial
  • AES-CTR
    • Key Length: 128, 192, 256
    • Counter Source: External
  • AES-ECB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-GCM
    • Direction: Decrypt, Encrypt
    • IV Generation: External
    • Key Length: 128, 192, 256
    • Tag Length: 32, 64, 96, 104, 112, 120, 128
    • IV Length: 96
    • Payload Length: 0, 128, 136, 256, 272
    • AAD Length: 0, 128, 136, 256, 272
  • AES-KW
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 192, 512, 1344, 4096
  • AES-KWP
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 8, 128, 192, 448, 4096
  • AES-OFB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • PhotonOS 2.0 running on ESXi 6.7 with JRE 1.8 on Intel Xeon 6126
    • processor
      • manufacturer: Intel
    • software
  • Ubuntu 16.04 running on ESXi 6.7 with JRE 1.8 on Intel Xeon 6126
    • processor
      • manufacturer: Intel
    • software
  • Windows Server 2016 running on ESXi 6.7 with JRE 1.8 on Intel Xeon 6126
    • processor
      • manufacturer: Intel
    • software
  • AES-CBC
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CCM
    • Key Length: 128, 192, 256
    • Tag Length: 32, 48, 64, 80, 96, 112, 128
    • IV Length: 56, 64, 72, 80, 88, 96, 104
    • Payload Length: 0-256
    • AAD Length: 0-524288
    Prerequisites:
  • AES-CFB128
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CFB8
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CMAC
      • Capabilities:
        • Direction: Generation
        • Key Length: 128
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Generation
        • Key Length: 192
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Generation
        • Key Length: 256
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 128
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 192
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 256
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
  • AES-CTR
    • Direction: Encrypt
    • Key Length: 128, 192, 256
  • AES-ECB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-GCM
    • Direction: Decrypt, Encrypt
    • IV Generation: External
    • Key Length: 128, 192, 256
    • Tag Length: 32, 64, 96, 104, 112, 120, 128
    • IV Length: 8, 96, 1024
    • Payload Length: 0, 128, 136, 256, 272
    • AAD Length: 0, 128, 136, 256, 272
    Prerequisites:
  • AES-KW
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 192, 512, 1344, 4096
    Prerequisites:
  • AES-KWP
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 448, 4096
    Prerequisites:
  • AES-OFB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • Linux 3.10 on Intel Xeon E5-2697 v3
    • processor
      • manufacturer: Intel
    • software
  • Linux 3.10 on Intel Xeon Silver 4110
    • processor
      • manufacturer: Intel
    • software
  • AES-CBC
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CCM
    • Key Length: 128, 192, 256
    • Tag Length: 32, 48, 64, 80, 96, 112, 128
    • IV Length: 56, 64, 72, 80, 88, 96, 104
    • Payload Length: 0-256
    • AAD Length: 0-524288
    Prerequisites:
  • AES-CFB128
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CFB8
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CMAC
      • Capabilities:
        • Direction: Generation
        • Key Length: 128
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Generation
        • Key Length: 192
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Generation
        • Key Length: 256
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 128
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 192
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 256
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
  • AES-CTR
    • Direction: Encrypt
    • Key Length: 128, 192, 256
  • AES-ECB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-GCM
    • Direction: Decrypt, Encrypt
    • IV Generation: External
    • Key Length: 128, 192, 256
    • Tag Length: 32, 64, 96, 104, 112, 120, 128
    • IV Length: 8, 96, 1024
    • Payload Length: 0, 128, 136, 256, 272
    • AAD Length: 0, 128, 136, 256, 272
    Prerequisites:
  • AES-KW
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 192, 512, 1344, 4096
    Prerequisites:
  • AES-KWP
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 192, 448, 4096
    Prerequisites:
  • AES-OFB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • Android Lollipop 5.1 on Qualcomm MSM8960 Pro
    • software
    • processor
      • manufacturer: Qualcomm
  • Android Marshmallow 6.0 on Qualcomm MSM8956
    • software
    • processor
      • manufacturer: Qualcomm
  • Android Oreo 8.1 on Qualcomm SDM660
    • software
    • processor
      • manufacturer: Qualcomm
  • AES-CBC
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CCM
    • Key Length: 128, 192, 256
    • Tag Length: 32, 48, 64, 80, 96, 112, 128
    • IV Length: 56, 64, 72, 80, 88, 96, 104
    • Payload Length: 256
    • AAD Length: 0-524288
    Prerequisites:
  • AES-CFB128
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CFB8
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-CMAC
      • Capabilities:
        • Direction: Generation
        • Key Length: 128
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Generation
        • Key Length: 192
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Generation
        • Key Length: 256
        • MAC: 8, 64, 128
        • Message Length: 0, 104, 128, 376, 512, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 128
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 192
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
      • Capabilities:
        • Direction: Verification
        • Key Length: 256
        • MAC: 8, 64, 128
        • Message Length: 0, 168, 256, 296, 384, 524288
  • AES-CTR
    • Direction: Encrypt
    • Key Length: 128, 192, 256
  • AES-ECB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256
  • AES-GCM
    • Direction: Decrypt, Encrypt
    • IV Generation: External
    • Key Length: 128, 192, 256
    • Tag Length: 32, 64, 96, 104, 112, 120, 128
    • IV Length: 8, 96, 1024
    • Payload Length: 0, 128, 136, 256, 272
    • AAD Length: 0, 128, 136, 272, 384
    Prerequisites:
  • AES-KW
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 192, 512, 1344, 4096
    Prerequisites:
  • AES-KWP
    • Direction: Decrypt, Encrypt
    • Cipher: Cipher, Inverse
    • Key Length: 128, 192, 256
    • Payload Length: 128, 192, 448, 4096
    Prerequisites:
  • AES-OFB
    • Direction: Decrypt, Encrypt
    • Key Length: 128, 192, 256