shrav007 Ответов: 3

шифрование данных на языке Си#


Привет! ребята я только что прошел через этот код в Google

public string Encrypt(string plainText)
   {
       if (plainText == null) throw new ArgumentNullException("plainText");

       //encrypt data
       var data = Encoding.Unicode.GetBytes(plainText);
       byte[] encrypted = ProtectedData.Protect(data, null, Scope);

       //return as base64 string
       return Convert.ToBase64String(encrypted);
   }

и попытался реализовать его, так как у меня были некоторые трудности с пониманием кода .Но проблема в том, что я не могу запустить и проверить, как это работает, потому что, когда я пытаюсь запустить, я получаю 2 ошибки, как показано ниже:

Имя "ProtectedData" не существует в текущем контексте

Имя "область действия" не существует в текущем контексте

я не знаю что делать

может ли какое-нибудь тело помочь мне в этом

я имею в виду, что я должен сделать, чтобы вышеприведенный фрагмент кода работал, или кто-нибудь может мне помочь, объяснив всю программу с ее работой и библиотеками, которые она использует

вот системные пространства имен, которые я использовал
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Security.Cryptography;


Заранее спасибо.

Abhinav S

Теги кода добавлены.

3 Ответов

Рейтинг:
15

shrav007

привет, ребята, это было просто для того, чтобы добавить ссылку на мой проект, это ссылка, которая у меня была, - system. security
затем пришлось изменить поле scope на DataProtectionScope.Локальная машина
шаги по добавлению ссылки приведены ниже:
зайдите в свой узел проекта и правой кнопкой мыши -и GT; добавить ссылку-и GT; .нет(имя вкладки) -&ГТ системы;.безопасности


Рейтинг:
1

Abhinav S

Это может помочь OP. 5.

uspatel

Спасибо, Абхинав........

shrav007

спасибо за ссылки это было действительно полезно

uspatel

Всегда пожалуйста.
Вы можете принять это решение, если оно действительно поможет.

Рейтинг:
0

Abhinav S

Похоже, вы не скопировали полный код.
Если вы посмотрите на линию ProtectedData.Protect(data, null, Scope);, вы не определили два значения, ProtectedData и Scope в любом месте программы. Они (вместе с их типами) должны быть определены для работы этого скопированного кода.


shrav007

на самом деле там была дана только эта часть позвольте мне дать вам ссылку на сайт где я нашел этот код http://stackoverflow.com/questions/1678555/password-encryption-decryption-code-in-net

Abhinav S

Взгляните на защищенные данные класс Это должно дать вам представление о том, что делать дальше.

shrav007

спасибо за совет