相关疑难解决方法(0)

668
推荐指数
9
解决办法
65万
查看次数

C#的简单不安全双向"混淆"

我正在为某些数据寻找非常简单的混淆(如加密和解密但不一定是安全的)功能.这不是关键任务.我需要一些东西来保持诚实的人诚实,但比ROT13Base64强一点.

我更喜欢已经包含在.NET framework 2.0中的东西,所以我不必担心任何外部依赖.

我真的不想乱用公钥/私钥等等.我对加密知之甚少,但我知道我写的任何东西都不会毫无价值......事实上,我可能搞砸了数学并且让它变得微不足道.

c# obfuscation

419
推荐指数
11
解决办法
21万
查看次数

如何手动创建身份验证cookie而不是默认方法?

使用FormsAuthentication我们编写这样的代码:

 if (IsValidUser())
 {
      FormsAuthentication.SetAuthCookie(userName, createPersistentCookie);
      FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie); 
 }
Run Code Online (Sandbox Code Playgroud)
  1. 如何手动创建身份验证cookie而不是写入FormsAuthentication.SetAuthCookie(userName, createPersistentCookie)

  2. 如何将登录页面中的重定向URL存储在字符串变量中而不是写入FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie)

asp.net

50
推荐指数
1
解决办法
7万
查看次数

更新到 .Net 6 时出现问题 - 加密字符串

我正在使用与此处提供的类似的字符串加密/解密类作为解决方案。

\n

这在 .Net 5 中对我来说效果很好。
\n现在我想将我的项目更新到 .Net 6。

\n

使用 .Net 6 时,解密的字符串确实会根据输入字符串的长度在某个点被截断。

\n

\xe2\x96\xb6\xef\xb8\x8f 为了方便调试/重现我的问题,我在这里创建了一个公共重现存储库。

\n
    \n
  • 加密代码是标准 2.0 项目中特意使用的。
  • \n
  • 引用此项目的是 .Net 6 和 .Net 5 Console 项目。
  • \n
\n

两者都使用完全相同的输入"12345678901234567890"和路径短语调用加密方法"nzv86ri4H2qYHqc&m6rL"

\n

.Net 5 输出:"12345678901234567890"
\n.Net 6 输出:"1234567890123456"

\n

长度之差为4.

\n

我还查看了.Net 6 的重大更改,但找不到可以指导我找到解决方案的内容。

\n

我很高兴就我的问题提出任何建议,谢谢!

\n

加密等级

\n
public static class StringCipher\n{\n    // This constant is used to determine the keysize of …
Run Code Online (Sandbox Code Playgroud)

.net c# migration encryption .net-6.0

47
推荐指数
2
解决办法
1万
查看次数

使.txt文件不可读/不可编辑

我有一个程序可以保存一个带有高分的.txt文件:

 // Create a file to write to. 
string createHighscore = _higscore + Environment.NewLine;
File.WriteAllText(path, createText);

// Open the file to read from. 
string createHighscore = File.ReadAllText(path);
Run Code Online (Sandbox Code Playgroud)

问题是用户可以使用texteditor尽可能简单地编辑文件.所以我想让文件不可读/不可编辑或加密它.

我的想法是我可以将数据保存在资源文件中,但是我可以在资源文件中写入吗?或者将其保存为.dll,加密/解密或查找MD5-sum/hash.

c# encryption md5sum

36
推荐指数
5
解决办法
9892
查看次数

使用C#进行JIRA Rest API登录

我写了下面的C#代码来登录JIRA Rest API:

var url = new Uri("http://localhost:8090/rest/auth/latest/session?os_username=tempusername&os_password=temppwd");
var request = WebRequest.Create(url) as HttpWebRequest;
if (null == request)
{
 return "";
}
request.Method = "POST";
request.ContentType = "application/json";
request.ContentLength = 200;
request.KeepAlive = false;
using (var response = request.GetResponse() as HttpWebResponse)
{
}
Run Code Online (Sandbox Code Playgroud)

当我执行它时,应用程序继续运行而不返回任何响应.请建议这是否是使用REST API调用JIRA登录的正确方法

c# rest jira

15
推荐指数
2
解决办法
3万
查看次数

使用较小的结果字符串进行简单的字符串加密/解密

我需要加密一个字符串,然后再次解密它.

我在这里实现了解决方案并且它运行良好,但结果字符串不合适,因为它需要简单且足够短以供用户使用.

我正在加密递增数据库ID(从1开始)并且不会超过500.理想情况下,我希望加密字符串的长度不超过6个字符.

任何想法赞赏..

编辑:这是一个冗长的形式,用户可以在以后使用此生成的字符串恢复

c# encryption

9
推荐指数
2
解决办法
1万
查看次数

使用密钥加密和解密的简便方法

我正在寻找一种简单的方法来使用固定密钥(将存储在我的配置中)加密和解密某些数据,并将结果存储为字符串(base16或hex).

就像是

string myString = "hello world";
string myKey = "k2k3aij3h";
string enc = new Algorithm().Encrypt(myString, myKey);
string dec = new Alrorithm().Decrypt(enc, myKey);
Run Code Online (Sandbox Code Playgroud)

c# cryptography

8
推荐指数
1
解决办法
2万
查看次数

C#PasswordDeriveBytes混乱

我在C#中有以下代码

PasswordDeriveBytes DerivedPassword = new PasswordDeriveBytes(Password, SaltValueBytes, HashAlgorithm, PasswordIterations);
byte[] KeyBytes = DerivedPassword.GetBytes(32);
Run Code Online (Sandbox Code Playgroud)

我正在使用"SHA1"哈希算法.

根据SHA1定义,它生成160位(20字节)密钥.我的问题是GetBytes方法如何从DerivedPassword中获取32个字节,GetBytes方法后面使用了什么算法?

c# cryptography pbkdf2

7
推荐指数
2
解决办法
6494
查看次数

创建一个 IDataProtectionProvider asp.net core 的实例

我正在尝试创建一个静态类和方法来加密和解密 asp.net 核心中的数据。

但问题是我必须使用 DI 在构造函数中获取“IDataProtectionProvider 提供者”,然后将其传递给方法以便使用 CreateProtector。

我不希望那样,直接想在它自己的方法中实例化 IDataProtectionProvider 提供者。

控制器代码:

private readonly IDataProtectionProvider _provider;
public addMDL(IDataProtectionProvider provider)
{
    _provider = provider;
}

public IActionResult OnGet()
{
    DataProProvider.decData(0, "ABC", _provider)
}
Run Code Online (Sandbox Code Playgroud)

静态类是:

public static class DataProProvider
{

    public static string encData(int intData, string strData, IDataProtectionProvider provider)
    {
        string str;
        IDataProtector dataProtector;
        dataProtector = provider.CreateProtector("AA");
        if (!string.IsNullOrEmpty(strData))
        {
            str = dataProtector.Protect(strData);
        }
        else
        {
            str = dataProtector.Protect(intData.ToString());
        }
        return str;
    }

    public static string decData(int intData, string strData, IDataProtectionProvider provider) …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-core

7
推荐指数
2
解决办法
6700
查看次数