@Restricted(NoExternalUse.class)
    public static byte[] getSHA256DigestOf(@NonNull byte[] input) {
        try {
                MessageDigest messageDigest = MessageDigest.getInstance("SHA-256");
                messageDigest.update(input);
                return messageDigest.digest();
        } catch (NoSuchAlgorithmException noSuchAlgorithmException) {
            throw new IllegalStateException("SHA-256 could not be instantiated, but is required to" +
                    " be implemented by the language specification", noSuchAlgorithmException);
        }
    }
@Test
    public void testGetSHA256DigestOf() {
        byte[] input = new byte[] {12, 34, 16};
        byte[] sha256DigestActual = Util.getSHA256DigestOf(input);

        byte[] expected = new byte[]
                { 19, 79, -17, -67, 50, -103, -122, 114, 100, 7, -91, 32, -127, 7, -17, 7, -55, -29, 61, -89, 121, -11,
                6, -117, -1, 25, 23, 51, 38, -113, -23, -105};
        assertArrayEquals(expected, sha256DigestActual);
    }