bs架构和cs架构前后端通讯的异同?

教材及书本上的bs架构代码所传输的json数据都是没有加密和解密,压缩及解压机制的.
而cs架构都是以数据包的形式通讯,有包头,包尾,数据长度,等信息经过加密压缩解压解密
进行通讯.感觉上cs架构更安全点?那么bs架构如何像cs架构一样以数据包的形式通讯呢?

BS是常见的浏览器模式,一般都是HTTP和HTTPS的。
HTTP基本是明文,加密的话一般就是MD5而已,不咋安全。
HTTPS是RSA和AES加密的结合,通过数字信封传递密钥,是比较安全的,缺点是速度慢。

CS可以用各种各样的协议,用HTTP就和BS是一样的了
如果是简单应用Socket就能解决需求,这种传输基本是明文,所以安全性不咋地。

所以,使用CS使用RPC框架比较合适,比如常用的:ThriftRPC、GRPC、AvroRPC都是不错的RPC框架。
由于序列化方式的存在,在网络中传输的数据包都是序列化过后的,基本解不开。

另外如果觉得还是不放心,自己实现一套数字信封的机制,用非对称加密交换对称密钥,用对称密钥进行数据交互。

比如。用RSA密钥加密AES密钥,用AES密钥来加密数据信息。这样基本上是解不开的。

因为目前看来,除了量子计算机,RSA是解不开的。

另外,RPC的性能比HTTP强的多。一般内部系统都是RPC解决,对外才用方便易懂的HTTP

bs也是cs架构,区别就是b就是客户端浏览器,也就是cs的c端,web服务区就是s端,而我们常说的cs架构指的是客户端和服务端都要自己开发。
你可以认为bs就是两端分别被浏览器和web服务器(iis\apache等待)代理了而已,不需要你自己开发。
http是浏览器和web服务器数据交换的协议,表示的数据本身的格式(而不是传输的格式),是明文传输的(也可以采用https加密),但是任何数据最终都会被操作系统(网络层或socket)转换成二进制流来传输。

b s现在很常用的就是http请求,返回json或xml格式,前端解析,至于加密,那随你,你可以对内容加密,也可以使用https方式

bs也可以加密,例如非对称加密算法,cs通讯可以加密的,bs一样可以

cs是客房端服务器模式;bs是浏览器服务器模式。它们最主要的区别是cs架构的应用程序需要在用户的计算机上进行安装。如我们常用的word,excel等应用软件属于cs架构;而bs架构的应用程序不需要在用户的计算机上进行安装,只需要有一个浏览器就可以运行bs架构的应用程序