anchor.diff:  
   %% DHParameters = [P (Prime)= mpint(), G(Generator) = mpint()]
   %% MyPrivKey, OthersPublicKey = mpint() 
  +-spec dh_compute_key(binary(), binary(), [binary()]) -> binary().
  +
   dh_compute_key(OthersPublicKey, MyPrivateKey, DHParameters) ->
       case dh_compute_key_nif(OthersPublicKey,MyPrivateKey,DHParameters) of
   	error -> erlang:error(computation_failed, [OthersPublicKey,MyPrivateKey,DHParameters]);
  
positive.code: %% DSS, RSA - sign
  %%
  %% Key = [P,Q,G,X]   P,Q,G=DSSParams  X=PrivateKey
  dss_sign(Data, Key) ->
      case dss_sign_nif(Data,Key) of
  	error -> erlang:error(badkey, [Data, Key]);
  
negative.code: %%
  %% AES in cipher feedback mode (CFB)
  %%
  -spec aes_cfb_128_encrypt(iodata(), binary(), iodata()) -> binary().
  -spec aes_cfb_128_decrypt(iodata(), binary(), iodata()) -> binary().
  
  aes_cfb_128_encrypt(Key, IVec, Data) ->
      aes_cfb_128_crypt(Key, IVec, Data, true).
  
  