爱编码的Farmer

  • 主页
  • 编程开发
  • 运营维护
  • 随心笔记
  • 新闻联播
  • 留言页面
  • 打赏
爱编码的Farmer
我是Farmer,我为自己代言
  1. 首页
  2. 编程开发
  3. 教程笔记
  4. 正文

SMTP+SSL协议研究-PHP实现

2018年08月28日 2142点热度 0人点赞 0条评论

突然的就想尝试一下实现邮件发送协议,尤其是SMTP+SSL之类的方式,SMTP协议全是明文的,写起来倒是不困难,但是到现在还完全不了解+SSL的工作方式

开头

github:https://github.com/huanl-php/protocol

打算以后将实现的协议都放在这里,所以要做好规划

Socket

php socket

先了解好php的socket函数,和c的socket非常像.为什么这里我们使用socket来实现,而不是用swoole,因为在大多数的情况下,swoole扩展并不一定安装了,这是非常不方便的

client类

这个是用来连接服务器的,由这一个类扩展出其他的协议,需要在这个里面写好连接和发送,接收的一些功能

这里不贴代码了,可以去github看:https://github.com/huanl-php/protocol/blob/master/src/Client.php

smtp

这里我拿我的阿里云的邮箱测试,参考这篇文章 邮件实现详解(二)------手工体验smtp和pop3协议,顺便学习了一波telnet,这篇文章是真的详细,我就不写过程了

实现

SMTP代码在这里了- -...然后看看SSL...的工作方式

SSL

SSL相当于是中间的一套层,客户端发送消息经过SSL层加密发送给服务器,然后经过服务器的SSL层又解密给服务器

在php中,ssl套层实现非常的简单...用stream_socket_client连接server,然后使用stream_socket_enable_crypto设置ssl链接,之后fwrite发送数据(大概这就是linux的哲学万物皆文件的体现吧),如果是这样,那么只需要在Client类中,重写一次connect和send那些方法就够了

源码

SSLClient

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2018年08月28日

Farmer

不敢说什么

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

王一之

上不慕古,下不肖俗。为疏为懒,不敢为狂。为拙为愚,不敢为恶。/ 微信公众号:一之哥哥

最新 热点 随机
最新 热点 随机
[油猴脚本开发指南]第一个脚本-HelloWorld Windows装杯且实用的终端配置 - WindowsTerminal+PowerShell优化 github不完全指南 iPad编程学习环境---vscode web版本搭建 从根本上解决鼠标手,chrome 插件"Vimium"分享 github actions 入门 We love open source
Windows装杯且实用的终端配置 - WindowsTerminal+PowerShell优化[油猴脚本开发指南]第一个脚本-HelloWorld
前几个星期入手的小米路由mini 罗永浩“开火”全纪录:苹果、小米全躺枪 Socket实现发送HTTP请求 C/C++ N位数加法 微服务架构本地尝试(5)-数据库拆分 Disable Google Fonts 禁用Google Fonts 提高WordPress加载速度
最近评论
头像
发布于 3 周前(12月24日) 感谢大佬开发的智慧树插件
头像
发布于 8 个月前(05月25日) 请问您之前写超星文档用的是什么程序啊?
头像
发布于 8 个月前(05月25日) 大佬为啥慕课助手用不了了啊
头像
发布于 8 个月前(05月23日) 哈哈哈,同是程序员,从你的cxmooc-tools来的,踩踩
头像
发布于 8 个月前(05月23日) 哈哈哈哈哈,同是程序员,踩踩,从你的cxmooc-tools来的
友情链接
  • Junzhou
  • mathor
  • 仙桃小白菜
  • 青山志
RSS
  • RSS

COPYRIGHT © 2021 爱编码的Farmer. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备19008073号