public void ShareTest()
        {
            var    algorithm  = new TSSAlgorithm();
            string testString = "Hello world";

            string[] shares = algorithm.Share(testString, 3, 3);
            string   result = algorithm.Recover(new[] { shares[0], shares[1], shares[2] }).RecoveredText;

            Assert.AreEqual(testString, result);
        }
Example #2
0
 public void Clear()
 {
     _algorithm      = new TSSAlgorithm();
     Phrase          = String.Empty;
     NumberOfShares  = 1;
     Threshold       = 1;
     Shares          = new ObservableCollection <ShareName>();
     InputShares     = String.Empty;
     RecoveredSecret = String.Empty;
     Phrase          = "";
 }
        public void Recover_DuplicationsTest()
        {
            var    algorithm  = new TSSAlgorithm();
            string testString = "Hello world";

            string[] shares = algorithm.Share(testString, 2, 3);
            var      result = algorithm.Recover(new[] { shares[0], shares[0] });

            //If a share has at least 1 duplicate - return null
            Assert.IsNull(result);
        }
        public void ShareTestWithLongInput()
        {
            var    algorithm  = new TSSAlgorithm();
            string testString = "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz" +
                                "abcdefghijklmnopqrstuvwxyz";

            string[] shares = algorithm.Share(testString, 3, 3);
            string   result = algorithm.Recover(new[] { shares[0], shares[1], shares[2] }).RecoveredText;

            Assert.AreEqual(testString, result);
        }