c# - asp.net core blazor webassessivecrypto - 如何使用自定义 key

标签 c# asp.net-core blazor blazor-webassembly subtlecrypto

我们正在尝试将 Subtlecrypto 集成到我们的 blazor web assembly 应用程序中。看来这是 blazor wasm 支持的唯一加密包。

根据official example ,没有办法更改/自定义 key 。如果在启动时分配 key ,则 key 是固定的并在整个应用程序中使用:

using Blazor.SubtleCrypto;

builder.Services.AddSubtleCrypto(opt => 
    opt.Key = "ELE9xOyAyJHCsIPLMbbZHQ7pVy7WUlvZ60y5WkKDGMSw5xh5IM54kUPlycKmHF9VGtYUilglL8iePLwr" 
    );

或者可以使用应用程序无法控制的随 secret 钥和 iv。

在我们的应用程序中,我们希望要求用户输入 key ,该 key 用于加密某些数据。固定 key 可以工作,但似乎不太安全。

有没有办法实现自定义 key ?

最佳答案

以下是我所做的:

    var options = new CryptoOptions() { Key = "some_secret"};
    var crypto = new CryptoService(jsRuntime, options);
    string s = "abc";
    CryptoResult encrypted = await crypto.EncryptAsync(s);

    Console.WriteLine("Encrypted: " + encrypted.Value);

    string d = await crypto.DecryptAsync(encrypted.Value);

    Console.WriteLine("Decrypted: " + d);

关于c# - asp.net core blazor webassessivecrypto - 如何使用自定义 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75026291/

相关文章:

c# - 将 list 框项目与数组进行比较

c# - 如何在 Winform DataGridView 中创建不同的单元格格式

c# - 如何放置两个 DataValueField?

mysql - 连接到 Azure 应用服务中的应用内 MySQL 时出现套接字错误

asp.net-core - .Net 核心 2.2 的 .Net 标准版本

asp.net-core - Blazor 布局中的顶部菜单

azure - SignalR 与 Azure AD(Blazor 服务器聊天应用程序)

c# - 在 Windows 10 中,显示名称不会出现在大图标/磁贴下方

caching - 如何在 ASP.NET Core、MVC 6 中保留用户的策略授权结果?

c# - 如何为 blazor 应用程序以像素为单位查找 svg 文本大小?