收藏 分销(赏)

南京海关物流监控信息化综合管理系统.doc

上传人:天**** 文档编号:2457097 上传时间:2024-05-30 格式:DOC 页数:15 大小:580.54KB
下载 相关 举报
南京海关物流监控信息化综合管理系统.doc_第1页
第1页 / 共15页
南京海关物流监控信息化综合管理系统.doc_第2页
第2页 / 共15页
南京海关物流监控信息化综合管理系统.doc_第3页
第3页 / 共15页
南京海关物流监控信息化综合管理系统.doc_第4页
第4页 / 共15页
南京海关物流监控信息化综合管理系统.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、附件3南京海关物流监控信息化管理系统报文交换方法技术要求一、应用方法介绍南京海相关外联网上设置报文接收MQ通道,企业将符合格式要求报文,按南京海关MQ报文交换标准进行自动传输,同时提供对应接收MQ通道,海关负责将相关回执信息写入该通道,由企业自行读取处理。报文交换基础步骤图步骤说明:1企业将报文(运抵汇报、理货汇报),加签,压缩、经过IPSEC VPN安全通道,发送至南京海关外联网上服务器端程序指定MQ队列中。 2南京海关从外联网指定MQ队列取出企业报送报文,经过解压缩,验证署名,存证后发往海关管理网,供海关关员业务处理。同时发送接收回执。3海关关员在物流系统进行审批处理或新舱单系统中进行舱单

2、业务处理。4海关系统将生成业务回执署名、压缩、经过IPSEC VPN安全通道,写入企业端回执信息接收队列中;5企业系统从企业队列中读取回执,解压、验签,进行深入业务处理。二、技术要求采取该方法企业,需进行以下准备工作:(一)实现和海关VPN联网企业准备一条含有固定公网IP地址互联网接入线路,配置VPN接入设备。提议VPN设备型号和规格以下:Juniper Netscreen SSG5(南京海关端使用是Juniper产品,推荐使用该产品)其它可选设备:Cisco ASA 5505Fortinet Fortigate 30B 根据采取IPSec VPN技术和南京海关联网设备配置规范(详见本文第三部

3、分)规范配置实施和海关网络互联。南京海关技术处提供相关技术支持,联络方法为南京海关技术热线:。(二)购置和本系统配套CA认证卡(USB Key)该Key购置方法和网站程序录入方法相同,但企业需要基于该Key进行编程,实现报文发送接收加验签。CA企业提供报文署名、验签控件等对应编程接口,各企业可在开发中使用,相关技术支持由CA企业负担。报文数字署名要求:和海关交换报文和回执均须进行数字署名,可采取省CA企业或联通CA企业CA体系,由用户自行选择。企业用户需基于USBKey对向海关申报XML报文内容进行加签,并对海关回执报文验签。加签验签标准以海关总署81号公告中中国海关进出境水运、空运货物舱单报

4、文格式制订说明相关报文数字署名要求为准。经和两CA企业协商,两家企业均已开发出符合上述规范报文加签验签标准接口,企业用户如开发程序需要,可和相关CA企业联络,相关CA企业提供对应开发接口程序及技术支持CA企业技术开发接口联络人以下:联通CA 企业联络人:吉庆祥, 电话 邮箱 省CA企业联络人:刘洋,电话:,手机:,邮箱:(三)生成符合标准报文企业根据南京海关报文规范,从本身业务系统中抽取形成标准报文。具体报文规范及格式要求见南京海关相关公告。(四)开发报文传输软件企业需开发报文传输系统,根据海关确定标准接口,把海关要求申报报文数字署名后发送给海关,同时接收海关回执报文。报文传输采取MSMQ3.

5、0软件,CA体系支持江苏CA和联通CA两类。1.具体传输方法企业端需要建立2个MQ队列。其一为接收海关业务回执队列,此队列为事务性队列。企业需要提供相关MQ地址信息(格式FORMATNAME:DIRECT=TCP:192.168.170.2private$client_sample_response,其中“192.168.170.2”应填海关在VPN网上分配给企业MQ服务器地址)。其二为接收报文是否验签成功传输回执接收队列,此队列为非事务性队列。企业需要提供相关MQ地址等信息(格式FORMATNAME:DIRECT=TCP:192.168.170.2private$client_sample_

6、receipt,其中“192.168.170.2”应填海关在VPN网上分配给企业MQ服务器地址),海关端程序将向两个队列中写入对应回执信息。企业端程序负责从对应队列中读取回执,如企业需要能够进行相关报文存证,企业要对队列进行实时监控,保持MQ报文传输服务器稳定性和消息队列通畅。针对海运部分系统及监管点部分系统,海关分别提供2个报文接收队列,业务报文接收队列为MSMQ事务性队列,传输回执接收队列为非事物性队列。业务报文接收队列用于接收企业申报业务报文数据,传输回执接收队列用于接收海关业务回执报文是否验签成功信息。2.现在海关接收队列地址。l 新舱单及海运部分报文海运业务报文接收队列(事务性队列)

7、FORMATNAME:DIRECT=TCP:192.168.2.124private$east_sample_message_qy海运传输回执接收队列(非事务性队列)FORMATNAME:DIRECT=TCP:192.168.2.124private$east_sample_responsel 监管点部分报文监管点业务报文接收队列(事务性队列)FORMATNAME:DIRECT=TCP:192.168.2.124private$east_eci_message_qy监管点传输回执接收队列(非事务性队列)FORMATNAME:DIRECT=TCP:192.168.2.124private$eas

8、t_eci_response3.企业报文传输分两个阶段:企业申报报文发送阶段及企业回执报文接收阶段。具体步骤图以下企业申报报文发送阶段,关键步骤为6步:(1)企业应用系统生成符合海关规范申报报文,(2)调用对应CA控件队报文进行数字署名(3)将数字署名后报文进行ZIP压缩(4)将压缩后数据内存流转换成字符数组,并作base64编码。(5)将Base64编码后报文数据写入海关企业报文接收队列中。 注意:写入规范为将申报报文文件名赋值给消息标签(Label)属性,报文内容赋值给消息报文体(Body)属性。企业传输回执接收队列地址赋值给消息回执报文队列(ResponseQueue)属性。(6)从企业

9、传输回执接收队列中收取海关传输回执消息。回执消息标签(Label)属性为回执报文文件名(即企业申报报文文件名),回执消息报文体(Body)属性为回执报文内容。回执报文内容为布尔值“TRUE”或“FALSE”,“TRUE”表示该企业申报报文海关验证经过,“FALSE”表示该企业申报报文海关验证未经过。企业回执报文接收阶段,关键步骤也分为6步:(1)企业应用系统将接收海关业务回执队列中回执报文读出。报文内容为回执消息报文体(Body)属性中内容,报文名为回执消息标签(Label)属性内容。海关传输回执接收队列地址为回执消息回执报文队列(ResponseQueue)属性内容。(2)将报文内容(BAS

10、E64编码)转化为字节数组。(3)将字节数组解压缩转换成报文原文。(4)调用对应CA控件验证海关数字署名。(5)生成传输回执消息发送至海关传输回执接收队列。一样,传输回执消息标签(Label)属性为报文文件名(即海关回执报文文件名),传输回执消息报文体(Body)属性为回执报文内容。回执报文内容为布尔值“TRUE”或“FALSE”,“TURE”表示该海关回执报文企业验证经过,“FALSE”表示该海关回执报文企业验证未经过。(6)企业应用系统使用海关回执报文。4.开发报文传输程序可参考本文第四部分“报文传输软件参考程序片断”。三、采取IPSec VPN技术和南京海关联网设备配置规范(一) 采取I

11、PSec VPN技术和海关联网项目拓扑图以互联网为底层网络、符合PKI安全协议族规范、站点到站点VPN技术,通常使用IPSec VPN技术。(二) 联网单位IPSec VPN网关选型联网单位选择IPSec VPN网关提议采取含有IPSec VPN功效硬件防火墙,能够选择设备包含Juniper Netscreen SSG系列(最低端产品为SSG 5)、思科ASA系列(最低端产品为ASA 5505)、Fortinet、SonicWall等厂商产品。(三) 联网单位提供信息联网单位提供以下信息:申请联网单位全称;申请线路公网ip地址、子网掩码;申请线路电信网关;企业申请线路性质(Lan或ADSL)。

12、(四) 南京海关提供信息依据联网单位提供网络信息,由海关向联网单位提供以下信息:该联网企业端设备内部ip地址网段、子网掩码、网关;南京海关IPSec VPN采取AutoIKE,提供建立VPN通道所需要信息,包含PresharedKey、Phase 1 Proposal算法、Phase 2 Proposal算法、南京海关端公网ip地址。(五) 联网单位设备配置规范南京海关使用IPSec VPN设备是Juniper Netscreen系列产品,本配置规范以Juniper Netscreen 5GT为例,Netscreen系列其它型号或采取其它品牌可参考该配置指导方案进行配置。1.设备工作模式net

13、screen设备不许可上英特网,模式配置成为dual-untrust模式。和海关联网网段设置在trust区域。2.地址列表定义各个用户端设备trust区域地址列表名称为:local。Untrust区域地址列表名称为:customs,地址为192.168.0.0/16。端口信息配置trust地址填写分配网段第一个可用地址做为端口地址,同时Web UI、Telnet、Ping全部选中;untrust口信息填写公网ip地址第一个可用ip地址,如某企业公网ip为58.213.134.112/27,电信网关ip为58.213.134.113,公网地址就使用网关以后第一个地址,即58.213.134.11

14、4。3.VPN配置新建一条tunnel,zone untrust,unnumbered 选中,interface选择连接外网端口号。建立第一阶段:Gateway Name:名称统一为vpn_to_customs_p1,Remote Gateway Type选择Static IP Address,IP Address/Host :填写南京海关端公网ip地址。Preshared Key和Prase 1 Proposal根据南京海关所发文档配置。建立第二阶段:VPN Name:名称统一为vpn_to_customs_p2,Remote Gateway选中Predefied ,下拉列表中选择vpn_t

15、o_customs_p1,Prase 2 Proposal根据所发文档配置,Bind to 选中,并选新建tunnel,proxy-ID选中,Local IP/Netmask填写用户端ip网段和掩码,Romote IP/Netmask填写192.168.0.0/16,选中VPN Monitor即可。 4.路由配置新建2条路由,第一条路由Network Address/Netmask填写0.0.0.0/0,选中Gateway ,Interface选择连接外网端口号,Gateway IP Address填写该宽带网关地址,点击OK按钮;第二条路由Network Address/Netmask填写1

16、92.168.0.0/16,选中Gateway ,Interface选择新建tunnel,点击OK按钮。5.策略配置首先把any any策略去除;从untrust到trust区域,源选择customs,目标选中local,service 选中any,logging选中;从trust区域到untrust,源选中local,目标选择customs,service 选中any,logging选中。6.修改用户名口令修改系统默认用户名、口令。四、报文传输软件参考程序片断(一)署名public static string SignXml(string xmlContent) if (provider.T

17、oLower() = uni) if (signaturer.ToLower() = server) SignatureInterface.SignatureInterfacePortTypeClient sig = new MsgTrnsCommon.SignatureInterface.SignatureInterfacePortTypeClient(); return sig.getXMLSignature(ConfigurationManager.AppSettingsSystemId, xmlContent); else return UniClient.XMLSignMQ(xmlC

18、ontent); else if (provider.ToLower() = jsca) if (signaturer.ToLower() = server) JsServer.SetServer(ConfigurationManager.AppSettingsJsServer,int.Parse(ConfigurationManager.AppSettingsSignPort); return JsServer.gtSignXmlString(xmlContent, ConfigurationManager.AppSettingsJsCert); else return JsClient.g

19、tSignXmlString(xmlContent); else return string.Empty; (二) 验签public static string VerifySign(string xmlContent) if (provider.ToLower() = uni) if (verifier.ToLower() = server) VerifySignature.VerifySignatureInterfacePortTypeClient ver = new MsgTrnsCommon.VerifySignature.VerifySignatureInterfacePortTyp

20、eClient(); return ver.xmlVerifySignature(xmlContent); else return UniClient.XMLVerifyMQSign(xmlContent); else if (provider.ToLower() = jsca) if (verifier.ToLower() = server) JsServer.SetServer(ConfigurationManager.AppSettingsJsServer,int.Parse( ConfigurationManager.AppSettingsValiPort); return JsSer

21、ver.gtVerifyXmlString(xmlContent); else UTF8Encoding ut = new UTF8Encoding(); Byte encodedBytes = ut.GetBytes(xmlContent); String decodedString = ut.GetString(encodedBytes); return JsClient.gtVerifyXmlString(decodedString); else return string.Empty; (三) 压缩public static Stream Compress(Stream s) s.Se

22、ek(0, SeekOrigin.Begin); MemoryStream cs = new MemoryStream(); try DeflaterOutputStream cs1 = new DeflaterOutputStream(s, new Deflater(Deflater.BEST_COMPRESSION); StreamCopy(cs, cs1, streamCopyBufferSize); catch (Exception ex) Logging.LogManager.GetLogger().Error(压缩程序犯错, ex); throw ex; cs.Seek(0, Se

23、ekOrigin.Begin); return cs; (四) 解压缩public static Stream Decompress(Stream s) InflaterInputStream inflaterInputStream = null; try s.Seek(0, SeekOrigin.Begin); inflaterInputStream = new InflaterInputStream(s); catch (Exception ex) Logging.LogManager.GetLogger().Error(解压缩犯错, ex); throw (new Exception(犯

24、错函数 + Decompress + ex.Message); return inflaterInputStream; (五) 字节数组和Base64转换:static void Main(string args) string factString = 中国; byte myByte; string Base64Str; /先把字符串根据utf-8编码转换成byte Encoding myEncoding = Encoding.GetEncoding(utf-8); /myByte中取得这么字节数组:228,184,173,229,141,142,228,186,186,230,176,14

25、5,229,133,177,229,146,140,229,155,189 myByte = myEncoding.GetBytes(factString); /把byte转成base64编码,这个例子形成base64编码unicode等价字符串为:5Lit5Y2O5Lq65rCR5YWx5ZKM5Zu9 Base64Str = Convert.ToBase64String(myByte); /再从base64编码转成byte,又恢复为字节数组:228,184,173,229,141,142,228,186,186,230,176,145,229,133,177,229,146,140,229,155,189 myByte = Convert.FromBase64String(Base64Str); /用同一个Encoding对象把byte转成字符串:中国 factString = myEncoding.GetString(myByte); Console.WriteLine(factString); 注:以上程序片断不作为报文传输软件开发依据,仅供开发时参考。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 行业资料 > 物流/供应链

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服