20145309实验5
20145203 实验五 Java网络编程及安全
实验内容
1.掌握Socket程序的编写;
2.掌握密码技术的使用;
3.设计安全传输系统。
实验要求
1、基于Java Socket实现安全传输
2、基于TCP实现客户端和服务器,结对编程一人负责客户端,一人负责服务器
3、使用Git进行版本控制
4、选择对称算法进行数据加解密.
5、选择非对称算法对对称加密密钥进行密钥分发.
6、选择合适的Hash算法进行完整性验证.
7、选择合适的算法对Hash值进行签名/验证.
实验步骤
1、运行TCP代码,我负责服务端。
**结对伙伴 20145216 史婧瑶 负责客户端 博客地址:http://www.cnblogs.com/sjy519/p/5471476.html**
2、设置IP地址
•打开cmd,输入ipconfig指令,如图:
3、建立Socket对象 getInetAddress(): 获得远程服务器的IP 地址.
getPort(): 获得远程服务器的端口.
getLocalAddress(): 获得客户本地的IP 地址.
getLocalPort(): 获得客户本地的端口.
getInputStream(): 获得输入流. 如果Socket 还没有连接, 或者已经关闭, 或者已经通过 shutdownInput() 方法关闭输入流, 那么此方法会抛出IOException.
getOutputStream(): 获得输出流, 如果Socket 还没有连接, 或者已经关闭, 或者已经通过 shutdownOutput() 方法关闭输出流, 那么此方法会抛出IOException.
4、信息安全传送:
①发送方A——————>接收方B
②A加密时,用B的公钥
③B解密时,用B的私钥