X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fldk%2Fstructs%2FSha256.java;h=8f380798c9fbd05c98ae34a8f91c6119ed1b97aa;hb=4a36fa97d4eee96099c4a176ea845c52db27e64c;hp=d18cf826518b965701048ec4d19786a6cae8f6ff;hpb=46763b974f120d1795fca6c1e757578784f3305a;p=ldk-java diff --git a/src/main/java/org/ldk/structs/Sha256.java b/src/main/java/org/ldk/structs/Sha256.java index d18cf826..8f380798 100644 --- a/src/main/java/org/ldk/structs/Sha256.java +++ b/src/main/java/org/ldk/structs/Sha256.java @@ -39,7 +39,7 @@ public class Sha256 extends CommonBase { } /** - * Checks if two Sha256s contain equal inner contents. + * Generates a non-cryptographic 64-bit hash of the Sha256. */ public long hash() { long ret = bindings.Sha256_hash(this.ptr); @@ -67,4 +67,17 @@ public class Sha256 extends CommonBase { if (!(o instanceof Sha256)) return false; return this.eq((Sha256)o); } + /** + * Constructs a new [`Sha256`] from the given bytes, which are assumed to be the output of a + * single sha256 hash. + */ + public static Sha256 from_bytes(byte[] bytes) { + long ret = bindings.Sha256_from_bytes(InternalUtils.check_arr_len(bytes, 32)); + Reference.reachabilityFence(bytes); + if (ret >= 0 && ret <= 4096) { return null; } + org.ldk.structs.Sha256 ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.Sha256(null, ret); } + if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.add(ret_hu_conv); }; + return ret_hu_conv; + } + }