打包回家 | 报告新错误 | 新建搜索 | 发展路线图 状态:正常开放 | 反馈 | 全部 | 自1.10.12版起关闭

请求编号3729 支持签名消息
提交: 2005-03-07 12:17 UTC
发件人: 鱼肝素 分配: 沃尔特
状态: 已证实的 包裹: 邮件时间(_M)
PHP版本: 无关 操作系统: 无关
路线图: (未分配)    
订阅  


 [2005-03-07 12:17 UTC]鱼肝素
描述:------------我添加了对使用openssl_pkcs7_sign签名消息的支持。不幸的是,在使用openssl_pkcs7签名时必须使用临时文件。如果其他人有更好的解决方案,我想听听。加密程序也可以这样做,如果您需要任何帮助,请告诉我。我不知道这是否是加密和签名消息的正确包,但我认为这是最符合逻辑的。再现代码:---------------更改代码:http://www.xolphin.net/mime.diff使用示例:($Customer和$PDFDocument是数据对象)$header['To']=$Customer->电子邮件;$header['From']='test@example.com'; $header['Subject']='签名消息';$mime=新邮件时间(“\n”);$mime->setTXTBody($Customer->Message);{$mime->addAttachment($PDFDocument->PDF,'application/PDF','Document'。$PDFDecument->DocumentName,'base64');}while($PDFDocument->Fetch());$sign_directory='/var/www/admin/certificates/mail';if($filename_signed=$mime->getSignedMessage($header,“certificate.pem”,“instantssl.pem”,$sign_directory,“密码”){exec(ini_get(“sendmail_path”)。“<”$文件名已签名);}

评论

 [2008-03-23 02:15 UTC]沃尔特(沃尔特·霍普)
针对HEAD创建了一个修补程序,以添加对邮件S/MIME签名的支持。计划将Mail_time 1.6.0包含在内。提议的消息签名工作流非常简单;只需将部分添加到Mail_time消息中,然后调用sign()一次对其进行签名。当调用sign()时,将构建并签名“内部”mime消息。在此之后,不能在电子邮件中添加其他部分;只能添加标题。消息签名后,get()方法返回签名的内部MIME消息,headers()将包含OpenSSL生成的“Content-Type:multipart/signed”标头。因此,可以像普通消息一样处理和发送已签名的Mail_mime消息。无法绕过临时文件的创建,因为openssl_pkcs7_sign无法以任何其他方式工作。但是,它们是使用tempnam()创建的,因此不会发生冲突。注意:所附的补丁仍然使用file_put_contents(PHP 5),这将被更改。openssl将成为可选的依赖项。使用示例:$符号=true;$text='电子邮件的文本版本';$html='<html><body>html版本的电子邮件</b></body></html>';$crlf=“\n”;$hdrs=数组('来自'=>'walter@example.com',“主题”=>“测试mime消息”,);$mime=新邮件时间($crlf);$mime->setTXTBody($text);$mime->setHTMLBody($html);$mime->addAttachment(“/home/walter/tmp/test.png”,“image/png”);if($符号){$result=$mime->符号($hdrs,'newcert.pem','cacert.pem','password','privatekey.pem'); if(PEAR::isError($result)){exit(“签名时出错:”.$result->getMessage()。“\n”);}}$body=$mime->get();$hdrs=$mime->标头($hdrs);//等。
 [2010-01-05 17:19 UTC]亚历克(亚历山大·马奇尼亚克)
由于当前代码中有很多更改,我们需要在这个补丁中进行一些更改。因此,签名必须支持文件中存储的消息。请参见saveMessage()、get()、_contentHeaders()。
 [2010-01-27 18:31 UTC]亚历克(亚历山大·马奇尼亚克)
-路线图版本:1.6.0 +路线图版本:
 【2015年8月20日下午14时18分】克韦斯克(克里斯蒂安·韦斯克)
与相关错误#20938.