private DecryptDns3TXT ( |
||
dns3Object | ||
toxId | byte | |
idRecord | byte | |
idRecordLenght | uint | |
requestId | uint | |
return | int |
/// <summary> /// Decodes and decrypts the dns3 string returned by <see cref="GenerateDns3String"/>. /// </summary> /// <param name="dns3String">String to decrypt.</param> /// <param name="requestId">The request id retrieved with GenerateDns3String.</param> /// <returns></returns> public string DecryptDns3TXT(string dns3String, int requestId) { ThrowIfDisposed(); byte[] id = new byte[ToxConstants.AddressSize]; byte[] idRecordBytes = Encoding.UTF8.GetBytes(dns3String); int result = ToxDnsFunctions.DecryptDns3TXT(_toxDns3, id, idRecordBytes, (uint)idRecordBytes.Length, ToxTools.Map(requestId)); if (result == 0) { return(ToxTools.HexBinToString(id)); } else { throw new Exception("Could not decrypt and decode id_record"); } }
/// <summary> /// Decodes and decrypts the dns3 string returned by <see cref="GenerateDns3String"/>. /// </summary> /// <param name="dns3String"></param> /// <param name="requestId"></param> /// <returns></returns> public string DecryptDns3TXT(string dns3String, uint requestId) { if (_disposed) { throw new ObjectDisposedException(GetType().FullName); } byte[] id = new byte[32 + sizeof(uint) + sizeof(ushort)]; byte[] idRecordBytes = Encoding.UTF8.GetBytes(dns3String); int result = ToxDnsFunctions.DecryptDns3TXT(_toxDns3, id, idRecordBytes, (uint)idRecordBytes.Length, (uint)requestId); if (result == 0) { return(ToxTools.HexBinToString(id)); } else { throw new Exception("Could not decrypt and decode id_record"); } }