Fix mutable bytearrays returned/used by some APIs.
Certain APIs and classes retain or return bytearrays which can be mutated by the callers. 1. Use @Immutable annotations to statically check if a class exposes any mutable data. 2. Add an ImmutableByteArray class that prevents mutable bytearrays by making or returning a copy of an underlying set of bytes. Change-Id: I2c5804eeb3d2e736eb45bb3283979b2874b5d7b4 ORIGINAL_AUTHOR=KB Sriram <kbsriram@google.com> GitOrigin-RevId: 1c9804a2101360ddf41db719eef1d763e965d9ed
Showing
- WORKSPACE 6 additions, 0 deletionsWORKSPACE
- java/src/main/java/com/google/cloud/crypto/tink/BUILD 2 additions, 0 deletionsjava/src/main/java/com/google/cloud/crypto/tink/BUILD
- java/src/main/java/com/google/cloud/crypto/tink/KeysetHandle.java 10 additions, 3 deletions.../main/java/com/google/cloud/crypto/tink/KeysetHandle.java
- java/src/main/java/com/google/cloud/crypto/tink/PrimitiveSet.java 11 additions, 4 deletions.../main/java/com/google/cloud/crypto/tink/PrimitiveSet.java
- java/src/main/java/com/google/cloud/crypto/tink/subtle/BUILD 6 additions, 0 deletionsjava/src/main/java/com/google/cloud/crypto/tink/subtle/BUILD
- java/src/main/java/com/google/cloud/crypto/tink/subtle/EciesHkdfSenderKem.java 16 additions, 6 deletions...m/google/cloud/crypto/tink/subtle/EciesHkdfSenderKem.java
- java/src/main/java/com/google/cloud/crypto/tink/subtle/Ed25519Verify.java 5 additions, 3 deletions...va/com/google/cloud/crypto/tink/subtle/Ed25519Verify.java
- java/src/main/java/com/google/cloud/crypto/tink/subtle/ImmutableByteArray.java 74 additions, 0 deletions...m/google/cloud/crypto/tink/subtle/ImmutableByteArray.java
- java/src/test/java/com/google/cloud/crypto/tink/subtle/ImmutableByteArrayTest.java 40 additions, 0 deletions...ogle/cloud/crypto/tink/subtle/ImmutableByteArrayTest.java
- pom.xml 12 additions, 0 deletionspom.xml
Loading
Please register or sign in to comment