Skip to content

Commit d48d5a3

Browse files
committed
Start 2.0.2
Also added tests
1 parent 92be4ad commit d48d5a3

File tree

3 files changed

+34
-2
lines changed

3 files changed

+34
-2
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
The library allows you to create and use NKEYS in Java code.
66

7-
**Current Release**: 1.5.2   **Current Snapshot**: 2.0.0-SNAPSHOT
7+
**Current Release**: 2.0.1   **Current Snapshot**: 2.0.2-SNAPSHOT
88

99
[![License Apache 2](https://img.shields.io/badge/License-Apache2-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
1010
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.nats/nkeys-java/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.nats/nkeys-java)

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ plugins {
1111
id 'signing'
1212
}
1313

14-
def jarVersion = "2.0.1"
14+
def jarVersion = "2.0.2"
1515
group = 'io.nats'
1616

1717
def isMerge = System.getenv("BUILD_EVENT") == "push"

src/test/java/io/nats/nkey/NKeyTests.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535

3636
import java.io.IOException;
3737
import java.nio.charset.StandardCharsets;
38+
import java.security.GeneralSecurityException;
3839
import java.security.SecureRandom;
3940
import java.util.Arrays;
4041
import java.util.Base64;
@@ -617,4 +618,35 @@ public void testClear() throws Exception {
617618

618619
}, "Invalid encoding");
619620
}
621+
622+
@Test
623+
public void testPublicKeyFromSeed() throws Exception {
624+
// using nsc generated seeds for testing
625+
NKey pk = NKey.fromSeed("SOAELH6NJCEK4HST5644G4HK7TOAFZGRRJHNM4EUKUY7PPNDLIKO5IH4JM".toCharArray());
626+
assertEquals("ODPWIBQJVIQ42462QAFI2RKJC4RZHCQSIVPRDDHWFCJAP52NRZK6Z2YC", new String(pk.getPublicKey()));
627+
628+
pk = NKey.fromSeed("SAANWFZ3JINNPERWT3ALE45U7GYT2ZDW6GJUIVPDKUF6GKAX6AISZJMAS4".toCharArray());
629+
assertEquals("AATEJXG7UX4HFJ6ZPRTP22P6OYZER36YYD3GVBOVW7QHLU32P4QFFTZJ", new String(pk.getPublicKey()));
630+
631+
pk = NKey.fromSeed("SUAGDLNBWI2SGHDRYBHD63NH5FGZSVJUW2J7GAJZXWANQFLDW6G5SXZESU".toCharArray());
632+
assertEquals("UBICBTHDKQRB4LIYA6BMIJ7EA2G7YS7FIWMMVKZJE6M3HS5IVCOLKDY2", new String(pk.getPublicKey()));
633+
}
634+
635+
@Test
636+
public void testFromPublicKey() throws Exception {
637+
_testFromPublicKey("SUAHBVFYZF3DIEO4UIHIZMJICVLURLBM5JJPK7GSVGP2QUC3NZ323BRE6A", "UCM5BG6AAZSEGREBCLG7PG4GFQNJABSAVIXC6VWS7TDHZFPIYFVYHIDG");
638+
_testFromPublicKey("SAADARCQJ3JA737Z443YNAZBNJNTFP7YNAF4QFUXKTBFBS4KAVK55DGSOQ", "AD2HQTUKOPBUGOPHA6KFRE6ZW5TH43D7P7E56OAQBZQLW2ECMNML6MVA");
639+
_testFromPublicKey("SNAH645525YA4PNXHWWS46VNXXQTYAXOPKGHXYAHXZZ43XTDDG2ZQAX7LY", "NBZCD2OSMSDRVYCAI77HUN6A2WNDWNT2DMVVEW66DHNWCDXVOUWRCCK7");
640+
_testFromPublicKey("SOAF5OP7UPK6XJCMNRYEJRET6YQSOE3FD4I4ERSN6WKHLYUC5AQDCOAFVY", "OA6SJACXYP2QGNLU4QYLJTVRVZPCZEEUNO2UQOVNGXYUPUJJHCVZIZQ2");
641+
_testFromPublicKey("SCAP4LGVURDWVL37AZIM5O47UKANFI6FKBY77HMYF55CKW2XFKLNUBTTFE", "CAO36T42KFA2LMIZ6YHJKPQEJWT5ULYSV633FWBCEJ7MREZPHHC56BSC");
642+
}
643+
644+
private static void _testFromPublicKey(String userEncodedSeed, String userEncodedPubKey) throws GeneralSecurityException, IOException {
645+
NKey fromSeed = NKey.fromSeed(userEncodedSeed.toCharArray());
646+
NKey fromKey = NKey.fromPublicKey(fromSeed.getPublicKey());
647+
648+
assertArrayEquals(fromSeed.getPublicKey(), fromKey.getPublicKey());
649+
assertArrayEquals(userEncodedPubKey.toCharArray(), fromSeed.getPublicKey());
650+
assertArrayEquals(userEncodedPubKey.toCharArray(), fromKey.getPublicKey());
651+
}
620652
}

0 commit comments

Comments
 (0)