首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用SMIME OpenSSL.NET加密

如何使用SMIME OpenSSL.NET加密
EN

Stack Overflow用户
提问于 2016-08-17 08:38:45
回答 1查看 821关注 0票数 1

客户端正在使用OpenSSL加密大文件(~1MB)。他在使用SMIME:

代码语言:javascript
复制
openssl.exe smime -encrypt -des3 -in "plaintestFile.txt" -out "encryptedFile.txt" "certificate.pem" >> "log_encrypt.txt" 

现在,我需要在C#应用程序中做同样的事情。我找到了一个.Net OpenSSL包装器:https://github.com/openssl-net/openssl-net

到目前为止,我已经从文件中加载PEM证书:

代码语言:javascript
复制
public static void getCert()
    {
        OpenSSL.X509.Configuration cfg = new OpenSSL.X509.Configuration(@"D:\openssl-0.9.8k_X64\openssl.cnf");

        string rootcerts = System.IO.File.ReadAllText(@"D:\cert.pem");

        BIO certbio = new BIO(rootcerts);
        OpenSSL.X509.X509Certificate cert = new OpenSSL.X509.X509Certificate(certbio);
    }

但是我找不到如何在这个包装中使用SMIME。帮忙?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-17 08:26:48

这可以通过商业产品的OpenSslSmime类来完成。

代码语言:javascript
复制
DidiSoft.OpenSsl.Cms.OpenSslSmime smime = new DidiSoft.OpenSsl.Cms.OpenSslSmime();
smime.EncryptFile("plaintestFile.txt", "certificate.pem", @"encryptedFile.txt", CmsCipherAlgorithm.Des3);

免责声明:我为DidiSoft工作

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38991842

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档