这是小弟参加全国信息安全竞赛的作品简介,供大家参考。

安全即时通信软件作品简介

摘要:针对即时通信用户的安全需要,设计并实现了基于微软MSN的安全即时通信软件。该软件能够解决即时通信用户之间的身份认证、消息加密传输、话音加密通信和文件安全传输等安全问题,具有与MSN客户端无缝集成、加密算法可替换接口和即插即用等特点。

关键字:安全即时通信,MSN安全插件,身份认证,话音加密,信息隐藏

1 引言

随着Internet的迅速发展,即时通信应用已经扩展到电子政务、电子商务等领域。但是即时通信系统在Internet网络平台上使用时面临着帐号假冒、口令破解、消息窃听等各种安全威胁,极大地限制了即时通信软件在相关领域的进一步推广和应用,急需相应的即时通信安全产品。因此,提出一种安全、高效、实用的即时通信安全解决方案来解决即时通信的安全问题具有重要的现实意义。

微软公司的MSN(Microsoft Service Network, MSN)是全球最大的即时通信网络,同时MSN开放了基于.NET平台的API接口,允许第三方通过开发代理插件增加新的安全功能。因此,基于MSN设计并实现安全即时通信软件具有可行性和很好的市场前景。

本软件设计实现了用户管理中心和MSN安全插件,其中用户管理中心具有统一用户管理和密钥管理功能,安全插件能够与MSN客户端无缝集成,具有身份认证、消息加密传输、话音加密通信和文件安全传输等功能。

2软件系统架构及功能

安全即时通信软件在微软提供的MSN服务器和客户端的基础上,通过引入MSN客户端安全插件和用户管理中心实现MSN用户之间的安全即时通信,安全即时通信软件系统架构如图1所示。软件系统由用户管理中心和安全插件两个子系统组成。

图1 安全即时通信软件系统架构

(1)用户管理中心

用户管理中心在系统中具有即时通用户管理、安全审计以及用户密钥文件的产生、分发等功能。用户管理中心负责给用户生成并发送共享密钥、证书公私钥文件、IBC私钥文件等身份认证所需的密钥文件。

(2)MSN客户端安全插件

作为嵌入MSN客户端的安全代理,安全插件为用户提供安全设置、身份认证、消息加密传输、话音加密通信和文件安全传输等安全功能。MSN客户端安全插件按照MSN提供的接口开发规范扩展安全功能,以动态链接库(.dll)的形式加载到客户端,与MSN无缝集成,实现了消息、话音和文件的安全通信。安全插件支持口令认证、证书认证和基于身份的密码体制IBC(Identity Based Cryptosystem)认证三种认证方式,消息加密和文件加密支持DES、RC2、3DES和AES四种加密算法,话音加密支持DES、3DES和AES三种加密算法,同时提供了加密算法可替换接口。信息隐藏采用LSB算法,支持bmp、WAV和TIF等多种文件格式。

在即时通信过程中,MSN客户端通过调用安全插件可满足用户安全需求。安全插件的加载不影响用户对MSN其他功能的使用,具有即插即用的特点。

3软件开发关键技术

(1)与MSN无缝集成技术

微软MSN开放了基于.NET平台的API接口IMessengerAddIn,允许第三方通过开发代理插件增加新的功能。插件以动态链接库(.dll)的形式加载到MSN客户端。由于使用了.NET平台代码访问安全机制,在系统运行时可以将插件分离出来,方便地实现即插即用。

(2)加密算法可替换技术

MSN安全插件具有算法可替换的特点。插件提供了多种可选算法,能够通过动态协商满足不同安全需求的用户。用户进行身份认证时,系统默认选择AES加密算法。在身份认证的过程中,双方将根据认证请求方选择的算法进行协商。通信双方每次认证时,请求方都可以根据需要改变算法并进行认证协商。话音加密模块中,插件提供了DES、3DES和AES三种话音加密算法,及计数器和ECB两种加密模式。请求方每次提出通话请求前进行设置,在建立连接过程中完成加密算法和模式的协商,并通过Diffie-Hellman协议完成话音加密密钥的协商。

(3)话音加密技术

话音通信建立连接时,信令数据进行数字签名后通过TCP发送,通信双方通过D-H协议协商密钥,并具有一次一密的特点。话音通信连接后,输入的音频数据首先经过2.4kbps的混合激励线性预测MELP算法进行压缩,然后经过加密算法(DES、3DES或AES)加密,将加密后的音频数据封装成RTP包;最后将RTP包封装成无连接的UDP包通过网络发送出去。在接收端经过相应的处理,可播放出语音。

(4)文件信息隐藏技术

MSN安全插件采用时域替换LSB算法实现文件信息隐藏。时域替换隐藏技术利用数字多媒体信息,在扫描和采样时都会产生物理随机噪声,而人的感官系统对这些随机噪声是不敏感的原理,试图用秘密信息比特替换掉随机噪声,以达到隐藏秘密信息的目的。其隐藏信息的优点是算法简单,容易实现,隐藏容量较大且算法执行速度较快,可以很好的满足即时通信对即时性的要求。

4应用前景

安全即时通信软件具有安全、方便、可靠和即插即用等特点,能满足即时通信用户的迫切安全需求,可以广泛应用于电子政务和电子商务领域,具有广泛的应用前景。

安全即时通信软件简介相关推荐

  1. C语言项目(四)——基于Linux系统下的带有GUI界面的即时通信软件

    二十一.TCP是如何保证可靠数据传输的? TCP提供一种面向连接的.可靠的字节流服务. 面向连接:意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接.在 ...

  2. linux系统最好的c类语言开发软件,Linux下基于C 语言开发即时通信软件.doc

    Linux下基于C 语言开发即时通信软件 Linux下基于C++语言开发即时通信软件 关键词:聊天软件 文字聊天 Linux平台 C/S架构ICE中间件 Linux-based instant mes ...

  3. 和java通信_[源码和文档分享]基于JAVA的即时通信软件

    一.设计任务书 1.1 设计任务 本文设计的是一个简单的即时通信软件,利用 Java Socket 进行点到点通信,其工作机制模仿即时通信软件的基本功能,已实现的功能有:客户端登录 客户端退出 群组成 ...

  4. [源码和文档分享]基于JAVA的即时通信软件

    一.设计任务书 1.1 设计任务 本文设计的是一个简单的即时通信软件,利用 Java Socket 进行点到点通信,其工作机制模仿即时通信软件的基本功能,已实现的功能有: 客户端登录 客户端退出 群组 ...

  5. 即时通信软件开发的年轻开发者曾注意到

    微软"迷失"的十年,已成为美国企业发展史上最大的谜团之一.为了解其中缘由,曾两次获得乔治·波尔卡新闻奖(George Polk Award)的美国知名记者.最近刚刚担任<名利 ...

  6. 计算机网络课程设计即时通讯,计算机网络课程设计报告-基于LAN的即时通信软件.doc...

    一.概述 1.1 设计目的: 利用MFC编程实现客户端之间通过服务器进行通信. 1.2 设计内容: 网络通信软件的数据通信是通过网络套接字进行的.根据该原理,其编程步骤应分为创建套接字.在套接字上进行 ...

  7. 科聊——即时通信软件原型设计

    原型展示地址:科聊 原型设计工具:墨刀 运行环境:Android,Web浏览器(Chrome测试) 安卓下载: 说明:产品原型是整个产品面市之前的一个框架设计,本产品原型对框架结构做出了基本搭建,未注 ...

  8. 局域网即时通信软件都有哪些?要如何选择?

    近些年来,由于企业内部敏感信息通过即时通信软件和互联网泄露的事件频发,许多企业对于内部信息安全保护越来越重视.除了使用局域网环境办公以外,还会采用局域网即时通信软件来作为内部沟通工具,降低信息泄露的风 ...

  9. 微信、QQ等即时通信软件为什么没有取代电子邮件?

    如今,社会信息化和网络化的发展导致数据量爆炸式增长,微信.QQ.陌陌.facebook等,种类繁多的应用软件为我们沟通交流搭建更加便捷的桥梁,那为什么我们依然需要使用电子邮件呢? 1.电子邮件具有较高 ...

最新文章

  1. cookie工具类 java_springboot封装JsonUtil,CookieUtil工具类代码实例
  2. flume高可用-failover-配置文件编写
  3. Quartus II与 ModelSim功能仿真与后仿真扫盲(转)
  4. 孪生再世代表数字几_《孪生双鱼座》
  5. CF1369F-BareLee【博弈论,SG函数】
  6. 优云数智UMCloud CTO王璞:IaaS+PaaS驱动私有云未来十年
  7. Flex Java Servlet 实现简单图片编辑
  8. 关于自我学习停滞的思考
  9. python游戏开发库_太好玩了!用Python写个弹球游戏2.0
  10. ubuntu eclipseJDK
  11. apache配置说明
  12. 【译文】Nodejs官方文档(Part 3 断言测试)
  13. 人工智能 一种现代方法 第3章 通过搜索进行问题求解
  14. 火车头伪原创php-火车头采集伪原创插件
  15. 华为VRRP-基于交换机的VRRP配置
  16. excel表格打印每页都有表头_打印的表格只有第一页有标题?一键让每页都带表头标题...
  17. 六大原则之迪米特法则
  18. 小程序canvas画头像
  19. Unix网卡重启命令
  20. Stream 计算总和

热门文章

  1. STM32驱动WS2812
  2. 2021-09-15 如何退出微信小程序
  3. redis下的cluste的脚本监控
  4. javabean,BeanUtils以及 java7的新特性 .
  5. windows8下载
  6. 医保结算单的“自费”、“自理”、“自负”分别是什么意思?
  7. python中valueerror是什么意思_python-ValueError:数据不得为字符串
  8. 双十一广告弹窗问题找到了!金山词霸,原来是你!
  9. UNDO与REDO形象理解
  10. win10无法完全关机的解决方法