这是开发山东跨境电商订单申报接口时个的示列代码,供大家们参考
1、关于跨境电商订单 申报加签给出点加签示例
/// <summary>
///节点签名 DigestValue
/// </summary>
/// <param name="sourceDoc"></param>
/// <returns></returns>
public static string GetDigestValue(XmlDocument sourceDoc)
{
RSACryptoServiceProvider signingKey = new RSACryptoServiceProvider(new CspParameters
{
KeyContainerName = "XML_DSIG_RSA_KEY"
});
SignedXml signedXml = new SignedXml(sourceDoc);
signedXml.SigningKey = signingKey;
new KeyInfo();
Reference reference = new Reference();
reference.Uri = "";
XmlDsigEnvelopedSignatureTransform transform = new XmlDsigEnvelopedSignatureTransform();
reference.AddTransform(transform);
signedXml.AddReference(reference);
signedXml.ComputeSignature();
XmlElement xml = signedXml.GetXml();
string result = "";
XmlNodeList elementsByTagName = xml.GetElementsByTagName("DigestValue");
if (elementsByTagName.Count > 0)
{
result = elementsByTagName[0].InnerText;
}
return result;
}
/// <summary>
/// 设置证书节点
/// </summary>
/// <param name="xmlElement"></param>
/// <param name="prefix"></param>
/// <returns></returns>
private static XmlNode SetPrefix(XmlNode xmlElement, string prefix)
{
xmlElement.Prefix = prefix;
if (xmlElement.HasChildNodes)
{
foreach (object obj in xmlElement.ChildNodes)
{
XmlNode xmlNode = (XmlNode)obj;
if (xmlNode.NodeType == XmlNodeType.Element)
{
SignatureHelper.SetPrefix((XmlElement)xmlNode, prefix);
}
}
}
return xmlElement;
}
/// <summary>
/// 签名报文节点
/// </summary>
/// <param name="DigestValue"></param>
/// <returns></returns>
private static string CreateSignInfoFragmentString(string DigestValue)
{
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("<ds:SignedInfo xmlns:ceb=\"http://www.chinaport.gov.cn/ceb\" xmlns:ds=\"http://www.w3.org/2000/09/xmldsig#\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">");
stringBuilder.Append("\n<ds:CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"></ds:CanonicalizationMethod>");
stringBuilder.Append("\n<ds:SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"></ds:SignatureMethod>");
stringBuilder.Append("\n<ds:Reference URI=\"\">");
stringBuilder.Append("\n<ds:Transforms>");
stringBuilder.Append("\n<ds:Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"></ds:Transform>");
stringBuilder.Append("\n</ds:Transforms>");
stringBuilder.Append("\n<ds:DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"></ds:DigestMethod>");
stringBuilder.AppendFormat("\n<ds:DigestValue>{0}</ds:DigestValue>", DigestValue);
stringBuilder.Append("\n</ds:Reference>");
stringBuilder.Append("\n</ds:SignedInfo>");
return stringBuilder.ToString();
}
/// <summary>
/// 组装报文
/// </summary>
/// <param name="digestValue"></param>
/// <param name="signatureValue"></param>
/// <param name="keyName"></param>
/// <returns></returns>
public static string CreateSignatureNodeString(string digestValue, string signatureValue, string keyName)
{
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("<ds:Signature xmlns:ds=\"http://www.w3.org/2000/09/xmldsig#\">");
stringBuilder.Append("\n<ds:SignedInfo>");
stringBuilder.Append("\n<ds:CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"></ds:CanonicalizationMethod>");
stringBuilder.Append("\n<ds:SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"></ds:SignatureMethod>");
stringBuilder.Append("\n<ds:Reference URI=\"\">");
stringBuilder.Append("\n<ds:Transforms>");
stringBuilder.Append("\n<ds:Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"></ds:Transform>");
stringBuilder.Append("\n</ds:Transforms>");
stringBuilder.Append("\n<ds:DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"></ds:DigestMethod>");
stringBuilder.AppendFormat("\n<ds:DigestValue>{0}</ds:DigestValue>", digestValue);
stringBuilder.Append("\n</ds:Reference>");
stringBuilder.Append("\n</ds:SignedInfo>");
stringBuilder.Append("\n<ds:SignatureValue>");
stringBuilder.AppendFormat("\n{0}", signatureValue);
stringBuilder.Append("\n</ds:SignatureValue>");
stringBuilder.Append("\n<ds:KeyInfo>");
stringBuilder.AppendFormat("\n<ds:KeyName>{0}</ds:KeyName>", keyName);
stringBuilder.Append("\n</ds:KeyInfo>");
stringBuilder.Append("\n</ds:Signature>");
return stringBuilder.ToString();
}

1、跨境通申报助手v1.0 只是个工具 免费为中小企业使用 帐号1001 密码:10011001
以上是关于订单加签的一些方法,其他的就不说明了,
2、有关于提供跨境进出口整套资料包括技术上的对接事项,需要有偿服务,跨境通保税仓储管理系统
3、跨境电商进口申报,出口申报,对接各物流公司 申报,仓储管理,PDA管理发货,跨境通保税仓储管理系统V2.0 还有农产品食蔬宝配送管理系统
下载地址: http://sdkjt.kjtcn.net/Downloadlist/downloadKJTHelp
加我QQ :183840232,手机:15557148372,微信号:15557148372
浙公网安备 33010602011771号