public final class org.springframework.security.crypto.keygen.KeyGenerators
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.springframework.security.crypto.keygen.KeyGenerators
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.security.crypto.keygen.KeyGenerators this
         0: .line 29
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 30
            return
        end local 0 // org.springframework.security.crypto.keygen.KeyGenerators this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/security/crypto/keygen/KeyGenerators;

  public static org.springframework.security.crypto.keygen.BytesKeyGenerator secureRandom();
    descriptor: ()Lorg/springframework/security/crypto/keygen/BytesKeyGenerator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 37
            new org.springframework.security.crypto.keygen.SecureRandomBytesKeyGenerator
            dup
            invokespecial org.springframework.security.crypto.keygen.SecureRandomBytesKeyGenerator.<init>:()V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.springframework.security.crypto.keygen.BytesKeyGenerator secureRandom(int);
    descriptor: (I)Lorg/springframework/security/crypto/keygen/BytesKeyGenerator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int keyLength
         0: .line 46
            new org.springframework.security.crypto.keygen.SecureRandomBytesKeyGenerator
            dup
            iload 0 /* keyLength */
            invokespecial org.springframework.security.crypto.keygen.SecureRandomBytesKeyGenerator.<init>:(I)V
            areturn
        end local 0 // int keyLength
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  keyLength  I
    MethodParameters:
           Name  Flags
      keyLength  

  public static org.springframework.security.crypto.keygen.BytesKeyGenerator shared(int);
    descriptor: (I)Lorg/springframework/security/crypto/keygen/BytesKeyGenerator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int keyLength
         0: .line 55
            new org.springframework.security.crypto.keygen.SharedKeyGenerator
            dup
            iload 0 /* keyLength */
            invokestatic org.springframework.security.crypto.keygen.KeyGenerators.secureRandom:(I)Lorg/springframework/security/crypto/keygen/BytesKeyGenerator;
            invokeinterface org.springframework.security.crypto.keygen.BytesKeyGenerator.generateKey:()[B
            invokespecial org.springframework.security.crypto.keygen.SharedKeyGenerator.<init>:([B)V
            areturn
        end local 0 // int keyLength
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  keyLength  I
    MethodParameters:
           Name  Flags
      keyLength  

  public static org.springframework.security.crypto.keygen.StringKeyGenerator string();
    descriptor: ()Lorg/springframework/security/crypto/keygen/StringKeyGenerator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 63
            new org.springframework.security.crypto.keygen.HexEncodingStringKeyGenerator
            dup
            invokestatic org.springframework.security.crypto.keygen.KeyGenerators.secureRandom:()Lorg/springframework/security/crypto/keygen/BytesKeyGenerator;
            invokespecial org.springframework.security.crypto.keygen.HexEncodingStringKeyGenerator.<init>:(Lorg/springframework/security/crypto/keygen/BytesKeyGenerator;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "KeyGenerators.java"