ntcdcrypto 0.0.4 ntcdcrypto: ^0.0.4 copied to clipboard
ntc_dcrypto is module dart cryptography.
ntc_dcrypto #
ntc_dcrypto is module dart cryptography.
Use this package as a library #
Add this to your package's pubspec.yaml file:
dependencies:
ntcdcrypto: ^0.0.4
1. An implementation of Shamir's Secret Sharing Algorithm 256-bits in Dart #
Usage #
Use encode/decode Hex
import 'package:ntcdcrypto/ntcdcrypto.dart';
main() {
SSS sss = new SSS();
String s = "nghiatcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
print("secret: ${s}");
print("secret.length: ${s.length}");
// creates a set of shares
List<String> arr = sss.create(3, 6, s);
//print(arr);
// combines shares into secret
var s1 = sss.combine(arr.sublist(0, 3));
print("combines shares 1 length = ${arr.sublist(0, 3).length}");
print("secret: ${s1}");
print("secret.length: ${s1.length}");
var s2 = sss.combine(arr.sublist(3, arr.length));
print("combines shares 2 length = ${arr.sublist(3, arr.length).length}");
print("secret: ${s2}");
print("secret.length: ${s2.length}");
var s3 = sss.combine(arr.sublist(1, 5));
print("combines shares 3 length = ${arr.sublist(1, 5).length}");
print("secret: ${s3}");
print("secret.length: ${s3.length}");
}
License #
This code is under the Apache Licence v2.