Skip to content

Commit 57b81f7

Browse files
committed
feat: Support for additional hash algorithms in canonicalization
1 parent 63bec16 commit 57b81f7

File tree

4 files changed

+18
-1
lines changed

4 files changed

+18
-1
lines changed

src/main/java/com/danubetech/dataintegrity/canonicalizer/RDFC10Canonicalizer.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,16 @@ public RDFC10Canonicalizer() {
2626
super(List.of("RDFC-1.0"));
2727
}
2828

29+
public abstract String hashAlgorithm();
2930
public abstract int hashLength();
3031
public abstract byte[] hash(byte[] input) throws GeneralSecurityException;
3132

3233
@Override
3334
public String canonicalize(JsonLDObject jsonLDObject) throws JsonLDException, IOException {
3435

3536
RdfDataset rdfDataset = jsonLDObject.toDataset();
36-
Collection<RdfNQuad> rdfNQuads = RdfCanonicalizer.canonicalize(rdfDataset.toList());
37+
RdfCanonicalizer rdfCanonicalizer = RdfCanonicalizer.newInstance(rdfDataset.toList());
38+
Collection<RdfNQuad> rdfNQuads = rdfCanonicalizer.canonicalize();
3739
StringWriter stringWriter = new StringWriter();
3840
NQuadsWriter nQuadsWriter = new NQuadsWriter(stringWriter);
3941
for (RdfNQuad rdfNQuad : rdfNQuads) nQuadsWriter.write(rdfNQuad);

src/main/java/com/danubetech/dataintegrity/canonicalizer/RDFC10SHA256Canonicalizer.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ public static RDFC10SHA256Canonicalizer getInstance() {
1212
return INSTANCE;
1313
}
1414

15+
@Override
16+
public String hashAlgorithm() {
17+
return "SHA-256";
18+
}
19+
1520
@Override
1621
public int hashLength() {
1722
return 32;

src/main/java/com/danubetech/dataintegrity/canonicalizer/RDFC10SHA384Canonicalizer.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ public static RDFC10SHA384Canonicalizer getInstance() {
1212
return INSTANCE;
1313
}
1414

15+
@Override
16+
public String hashAlgorithm() {
17+
return "SHA-384";
18+
}
19+
1520
@Override
1621
public int hashLength() {
1722
return 48;

src/main/java/com/danubetech/dataintegrity/canonicalizer/RDFC10SHA512Canonicalizer.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ public static RDFC10SHA512Canonicalizer getInstance() {
1212
return INSTANCE;
1313
}
1414

15+
@Override
16+
public String hashAlgorithm() {
17+
return "SHA-512";
18+
}
19+
1520
@Override
1621
public int hashLength() {
1722
return 64;

0 commit comments

Comments
 (0)