SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。
SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。
4.4 系统总体构成
4.4.1 系统简介
用伪随机数流对原始数据进行加扰,对方用解扰器进行解扰,从而获得原始数据。伪随即数流由控制字发生器发出的控制字控制。控制字有DES密钥加密,发送给接收方。接收方收到后,用DES密钥解密,产生相同的控制字,生成相同的伪随机数流就行解扰。DES密钥最初由RSA进行加密,通过双方的协商获得。
这需要采用三层结构,第一层数据加扰层,第二层控制字层,第三层服务层。然而每层之间只需要提供必要的接口,这三层结构保护了加密算法的安全性。第一层加扰层主要任务是对影音文件进行解扰,主要接口:接收原文件、控制字、传输地址。第二层控制字层主要解决的问题是随机序列控制字的生层和传输。第三层服务层,主要任务是数据加密和DES密钥的加密。DES密钥是用来对伪随机数的种子进行加密的,采用的方式是双重加密,即使用RSA加密算法对DES的密钥进行加密,从而保证了DES密钥的安全性。由于RSA不适合大量的数据进行加密,因为RSA加密速度非常的慢,它只是用于少量的数据的加密,但是RSA的加密级别非常高,很难破解。而DES适用于对大量数据进行加密,因为DES密钥的长度不长,易破解,所以双重加密可以合理,安全性也较高。
除此以外还需要数据库的支持,数据库中需要客户的基本信息及账户管理,影片的基本信息及存储管理,完善收费依据。
5.1.1 加扰层介绍
主要任务:对一个巨大的影音文件进行加解扰
主要问题:采用何种算法?如何保证服务器端和客户端的加扰解扰过程是一致的?
解决方法:算法不能复杂,要求迅速,而且有一定的加密能力,因此采用伪随机树算法产生一个貌似随机的长序列,与视频文件进行运算。
主要借口:接受原文件、控制字、传输地址
传输内容:加扰后数据流
描述:服务器端从第二层获取控制字,产生一个伪随机数流,然后将这个流与原始视频流按位异或进行加扰,传输至客户端,再用同样的伪随机数流进行异或解扰。
5.1.2关键代码
定义接口:
public interface OutputStream
{
int write(byte[]b);
int write(byte[] b, int offset, int num);
int skip(int i);
void close();
}
public interface InputStream
{
int read(byte[] b);
int read(byte[] b, int offset, int num);
int skip(int i);
void close();
}
public interface RandomSource : InputStream
{
void setSeed(byte[] seed);