INNER CODE UNIT · Java
readResource
GrapheneOS/AttestationServer · src/main/java/app/attestation/server/AttestationProtocol.java:411
private static byte[] readResource(final String path) {
try (final InputStream stream = AttestationProtocol.class.getResourceAsStream(path)) {
return stream.readAllBytes();
} catch (final IOException e) {
throw new RuntimeException(e);
}
}
private static final ThreadLocal<SecureRandom> random =
ThreadLocal.withInitial(() -> new SecureRandom());
static byte[] generateRandomToken() {
final byte[] challenge = new byte[RANDOM_TOKEN_LENGTH];
random.get().nextBytes(challenge);
return challenge;
}
private static byte[] getFingerprint(final Certificate certificate)