public async void CreatePlainCipherOpt()
 {
     Utils.InitialiseSessionForRandomTestApp();
     using (var handle = await CipherOpt.NewPlaintextAsync()) {
         Assert.NotNull(handle);
     }
 }
 public async Task NewSymmetric()
 {
     Utils.InitialiseSessionForRandomTestApp();
     using (var handle = await CipherOpt.NewSymmetricAsync()) {
         Assert.NotNull(handle);
     }
 }
        public async Task NewAssymmetric()
        {
            Utils.InitialiseSessionForRandomTestApp();
            var encKeyPairTuple = await Crypto.EncGenerateKeyPairAsync();

            using (var handle = await CipherOpt.NewAsymmetricAsync(encKeyPairTuple.Item1)) {
                Assert.NotNull(handle);
            }
            await Crypto.EncPubKeyFreeAsync(encKeyPairTuple.Item1);

            await Crypto.EncSecretKeyFreeAsync(encKeyPairTuple.Item2);
        }
示例#4
0
        public EventStoreImDProtocol(string appId, Session session)
        {
            AppContainerPath = $"apps/{appId}";

            _session           = session;
            _mDataInfo         = session.MDataInfoActions;
            _mData             = session.MData;
            _mDataPermissions  = session.MDataPermissions;
            _crypto            = session.Crypto;
            _accessContainer   = session.AccessContainer;
            _mDataEntryActions = session.MDataEntryActions;
            _mDataEntries      = session.MDataEntries;
            _iData             = session.IData;
            _cipherOpt         = session.CipherOpt;
        }
示例#5
0
        private void Init(IntPtr appPtr, GCHandle disconnectedHandle)
        {
            IsDisconnected      = false;
            _appPtr             = new SafeAppPtr(appPtr);
            _disconnectedHandle = disconnectedHandle;

            AccessContainer   = new AccessContainer(_appPtr);
            Crypto            = new Crypto(_appPtr);
            CipherOpt         = new CipherOpt(_appPtr);
            IData             = new IData.IData(_appPtr);
            MData             = new MData.MData(_appPtr);
            MDataEntries      = new MDataEntries(_appPtr);
            MDataEntryActions = new MDataEntryActions(_appPtr);
            MDataInfoActions  = new MDataInfoActions(_appPtr);
            MDataPermissions  = new MDataPermissions(_appPtr);
            NFS = new NFS(_appPtr);
        }
        public async void WriteAndReadUsingPainText()
        {
            var data = new byte[1024];

            new Random().NextBytes(data);
            Utils.InitialiseSessionForRandomTestApp();
            var cipherOptHandle = await CipherOpt.NewPlaintextAsync();

            var seHandle = await IData.IData.NewSelfEncryptorAsync();

            await IData.IData.WriteToSelfEncryptorAsync(seHandle, data.ToList());

            var dataMapAddress = await IData.IData.CloseSelfEncryptorAsync(seHandle, cipherOptHandle);

            var seReaderHandle = await IData.IData.FetchSelfEncryptorAsync(dataMapAddress);

            var len = await IData.IData.SizeAsync(seReaderHandle);

            var readData = await IData.IData.ReadFromSelfEncryptorAsync(seReaderHandle, 0, len);

            Assert.AreEqual(data, readData);
        }