GOST рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рд╡реЗрдм рд╕реЗрд╡рд╛рдПрдВ

2008.2 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╢реБрд░реВ, рдХреИрдЪ рдФрд░ рдПрдирд╕реЗрдВрдмрд▓ рдиреЗ рдПрд╕рдУрдПрдкреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рд╕рд╣рд┐рдд WS- рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ RSA рдкрд░рд┐рд╡рд╛рд░ рдХреЗ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдХреЗ рд▓рд┐рдП "рдЖрдЙрдЯ рдСрдл рдж рдмреЙрдХреНрд╕" рд╕рдорд░реНрдерди рд╣реИред

рд░реВрд╕реА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЧрдП рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЕрдХреНрд╕рд░ рдкреНрд░рдорд╛рдгрд┐рдд рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд╕реВрдЪрдирд╛ рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ GOST рдХреНрд░рд┐рдкреНрдЯреЛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд GOST рдХреА рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХреИрдЪ рд╡реЗрдм рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред

рдПрдХ рдкреНрд░рдорд╛рдгрд┐рдд рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд╕реВрдЪрдирд╛ рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо CryptoPro JCP рдЙрддреНрдкрд╛рдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдЬрд╛рд╡рд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬреЛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ - GOST R 34.10-2001 , рд╕рд╛рде рд╣реА рд╣реИрд╢ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо GOST R 34.11-94 ред

рд╡рд┐рдВрдбреЛрдЬ рдкрд░ CryptoPro JCP рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЬрд╛рд╡рд╛ рд░рдирдЯрд╛рдЗрдо рдПрдирд╡рд╛рдпрд░рдирдореЗрдВрдЯ (JRE) рд╕рдВрд╕реНрдХрд░рдг 1.6 рдпрд╛ рдмрд╛рдж рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред

рдирд┐рд░реНрдорд╛рддрд╛ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ CryptoPro JCP рд╡рд┐рддрд░рдг рдХрд┐рдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВ рдФрд░ install.bat рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПрдБред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд┐рддрд░рдг рдХреЗ рдХрд╛рдо рдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред рдЬрдм рдпрд╣ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ JRE рдХреЛ рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

install.bat "C: \ Program Files \ Java \ jdk1.6.0_20 \ jre"

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд▓рд╛рдЗрд╕реЗрдВрд╕ рд╣реИ, рдЬрдм рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рдФрд░ рдХрдВрдкрдиреА рдХрд╛ рдирд╛рдо рднреА рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

install.bat "C: \ Program Files \ Java \ jdk1.6.0_20 \ jre" XXXXX-XXXXX-XXXXX-XXXXX-XXXXX "рдЖрдкрдХреА рдХрдВрдкрдиреА"

рд╡рд┐рдВрдбреЛрдЬ 7 рдХреЗ рддрд╣рдд, рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреВрд░реА рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдирд┐рдореНрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА jre \ lib \ ext рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ:
asn1rt.jarJCP.jarJCPRevCheck.jarJCP_ASN.jar
AsnLite.jarJCPinst.jarJCPRevTools.jarJCryptoP.jar
forms_rt.jarJCPRequest.jarJCPxml.jar

рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рд╡рд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп


рд╣рдореЗрдВ iscjcp.jar рд▓рд╛рдЗрдмреНрд░реЗрд░реА ( рдпрд╣рд╛рдВ рд╕реНрд░реЛрдд) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬрд┐рд╕рдореЗрдВ Cach рд╕реЗ JCP рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рд╣рд╛рдпрдХ рдХрдХреНрд╖рд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддреАрди рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА - рдХреЙрдордиреНрд╕ рд▓реЙрдЧрд┐рдВрдЧ , рд╕реИрдВрдЯрд╛рд░рд┐рдпреЛ (рдЙрд░реНрдл рдПрдХреНрд╕рдПрдордПрд▓ рд╕реБрд░рдХреНрд╖рд╛) рдФрд░ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд╕ 4 рдЬреЗ ред рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ Apache Software рд▓рд╛рдЗрд╕реЗрдВрд╕ 2.0 рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдирд┐рдпрдорд┐рдд рд╣реИред

рд╕реВрдЪреАрдмрджреНрдз рдЪрд╛рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде jars.zip рд╕рдВрдЧреНрд░рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ jre \ lib \ ext рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВред

рдпрджрд┐ рдЖрдк рд╡рд┐рдВрдбреЛрдЬ 7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд╕рднреА рд╕рдореВрд╣реЛрдВ рдХреЛ jre \ lib \ ext рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреА рд╣реЛрдЧреАред

рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ рдФрд░ рдЪрд▓рд╛рдПрдВ, рд╡рд░реНрдЧ рдЕрдиреБрдорд╛рди рдмрдирд╛рдПрдВ


рдХреИрдЪ / рдПрдирд╕реЗрдВрдмрд▓ рд╕реЗ рдЬрд╛рд╡рд╛ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдФрд░ рдЪрд▓рд╛рдирд╛ рд╣реЛрдЧрд╛, рд╕рд╛рде рд╣реА рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЬрд╛рд╡рд╛ рд╡рд░реНрдЧреЛрдВ рдХреЗ рдЕрдиреБрдорд╛рдиреЛрдВ рдХреЛ рднреА рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред

% SYS рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рд╕реЗрдЯрд┐рдВрдЧ рдЯреЗрдмрд▓ рдореЗрдВ рдПрдХ рдирдИ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬреЛрдбрд╝реЗрдВ:

% Net_Remote.ObjectGateway (рдирд╛рдо, рдкреНрд░рдХрд╛рд░, рд╕рд░реНрд╡рд░, рдкреЛрд░реНрдЯ, JavaHome) рдорд╛рди ('JCPGate', '1', '127.0.0.1', '55555', 'C:' Program Files \ Java \ jdk1.6.0_20 рдореЗрдВ рдбрд╛рд▓реЗрдВред \ jre ')

рдпрд╣рд╛рдВ, рдирд╛рдо рдлрд╝реАрд▓реНрдб рдореЗрдВ, рдорд╛рди "JCPGate" рд╣реИ - рдпрд╣ рдирдП рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХрд╛ рдирд╛рдо рд╣реИред JavaHome рдлрд╝реАрд▓реНрдб рдореЗрдВ, рдЖрдкрдХреЛ JRE рдХреЗ рд▓рд┐рдП рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП JCP рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдкреЛрд░реНрдЯ рдлрд╝реАрд▓реНрдб Cach├й рд╕реЗ рдЗрд╕ рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ TCP рдкреЛрд░реНрдЯ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред

рдЕрдм рдЖрдк Cach├й рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдирд┐рдореНрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рдирдпрд╛ Java рдЧреЗрдЯрд╡реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

## рд╡рд░реНрдЧ (% Net.Remote.Service) рд▓рд┐рдЦреЗрдВред рд╕реНрдЯрд╛рд░реНрдЯрдЧреЗрдЯрд╡реЗ ("JCPGate")

рдЗрд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, StopGateway рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ:

## рдХрдХреНрд╖рд╛ (% Net.Remote.Service) рд▓рд┐рдЦреЗрдВред рд╕рд╣-рдкрд╛рда рдорд╛рд░реНрдЧ ("JCPGate")

рдЖрдк рдХрд┐рд╕реА рднреА рдХреНрд╖реЗрддреНрд░ рд╕реЗ рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХреЛ рд╢реБрд░реВ / рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рдЙрд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЬрд╛рдПрдБрдЧреЗ рдЬрд╣рд╛рдБ рд╡реЗрдм рд╕реЗрд╡рд╛рдПрдБ рд╡рд┐рдХрд╕рд┐рдд рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВ рдФрд░ Cach├й рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдХреЗ isc.jcp.JcpFacade Java рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдХреНрд╖реЗрдкрдг рдмрдирд╛рдПрдБ:

do ## рд╡рд░реНрдЧ (% Net.Remote.Java.JavaGateway)ред% ExpressImport ("isc.jcp.JcpFacade", "55555")

рдпрд╣рд╛рдВ, 55555 рдЯреАрд╕реАрдкреА рдкреЛрд░реНрдЯ рдирдВрдмрд░ рд╣реИ рдЬреЛ рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдкреЛрд░реНрдЯ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрдм% Net_Remote.ObjectGateway рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬреЛрдбрд╝ рджреА рдЧрдИ рдереАред

рдЖрдиреЗ рд╡рд╛рд▓реЗ SOAP рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ EDS рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛


рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ smev.JcpUtils рдФрд░ smev.JcpSignature рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╕рд╛рде iscjcp-cos-sources2012.zip рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВред рдЬрд┐рд╕ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡реЗрдм рд╕реЗрд╡рд╛рдПрдБ рд╡рд┐рдХрд╕рд┐рдд рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВ, рд╡рд╣рд╛рдВ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Cach├й рдореЗрдВ smev.JcpUtils рд╡рд░реНрдЧ рдХрд╛ рдЖрдпрд╛рдд рдХрд░реЗрдВред рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдЖрдпрд╛рддрд┐рдд рд╡рд░реНрдЧ рдЦреЛрд▓реЗрдВ рдФрд░ рдХреНрд░рдорд╢рдГ рдЬрд╛рд╡рд╛ рдЧреЗрдЯрд╡реЗ рдХреЗ рдЯреАрд╕реАрдкреА рдкреЛрд░реНрдЯ рдФрд░ рдЖрдИрдкреА рдкрддреЗ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реБрдП, JAVAGATEWAYPORT рдФрд░ JAVAGATEWAYSERVER рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рдХрдХреНрд╖рд╛ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВред

рдЕрдм, рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рд╡реЗрдм рд╕реЗрд╡рд╛ рдореЗрдВ рдПрдХ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдЬрд╛рдВрдЪ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рд╡реЗрдм рд╕реЗрд╡рд╛ рд╡рд░реНрдЧ рдореЗрдВ рдирд┐рдореНрди рд╡рд┐рдзрд┐ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 рд╡рд┐рдзрд┐ OnPreSOAP (рдореЛрдб% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдХрд╛рд░реНрд░рд╡рд╛рдИ% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдиреБрд░реЛрдз)
 {
   do ## рд╕реБрдкрд░ (рдореЛрдб, рдПрдХреНрд╢рди, рдЕрдиреБрд░реЛрдз)

   #dim рд╕реНрдЯреНрд░реАрдо% Stream.Object = рдЕрдиреБрд░реЛрдз рдХреЗ рд░реВрдк рдореЗрдВ

   рдЕрдЧрд░ '$ .Object (рд╕реНрдЯреНрд░реАрдо)
   {
     // MIME рд╕рдВрд▓рдЧреНрдирдХ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ
     #dim рдЗрдВрдбреЗрдХреНрд╕% Integer =% request.NextMimeData ("")
     рд╕реЗрдЯ рд╕реНрдЯреНрд░реАрдо = $ рдЪрдпрди (рдЗрдВрдбреЗрдХреНрд╕ = "": "", 1:% request.GetMimeData (рдЗрдВрдбреЗрдХреНрд╕))
   }

   рдЕрдЧрд░ $ isObject (рд╕реНрдЯреНрд░реАрдо)
   {
   #dim рджреЛрд╖% SOAP.Fault = ## рд╡рд░реНрдЧ (smev.JcpUtils) .verifySignatureOnPreSoap (рд╕реНрдЯреНрд░реАрдо)
     рдЕрдЧрд░ $ isObject (рдлреЙрд▓реНрдЯ) рд╕реЗрдЯ ..SoapFault = рдЧрд▓рддреА
   }
 }

рдпрд╣ 2009.1 рдХреЗ рдмрд╛рдж рд╕реЗ рдХреИрдЪ / рдПрдирд╕реЗрдВрдмрд▓ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬреЛ рд╕рднреА рдЖрдиреЗ рд╡рд╛рд▓реЗ SOAP рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИред

 рдХреНрд▓рд╛рд╕ рдЯреЗрд╕реНрдЯ редestService% SOAP.WebService рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реИ
 {
   рдкреИрд░рд╛рдореАрдЯрд░ SERVICENAME = "TestService";

   рдкреИрд░рд╛рдореАрдЯрд░ NAMESPACE = "http: // test / wsdl";

   рд╡рд┐рдзрд┐ рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ (% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрд░реЛрдз) рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ [рдкреНрд░рдХреНрд░рд┐рдпрд╛рдмрд▓рд╛рдХ = 1, рд╕рд╛рдмреБрди = "рдХрд▓рд╢: рдкреНрд░рддрд┐рдзреНрд╡рдирд┐",
        SoapBindingStyle = рджрд╕реНрддрд╛рд╡реЗрдЬрд╝, SoapBodyUse = рд╢рд╛рдмреНрджрд┐рдХ, WebMethod]
   {
      рдЕрдиреБрд░реЛрдз рдЫреЛрдбрд╝ рджреЗрдВ
   }

   рд╡рд┐рдзрд┐ OnPreSOAP (рдореЛрдб% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдХрд╛рд░реНрд░рд╡рд╛рдИ% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдиреБрд░реЛрдз)
   {
     do ## рд╕реБрдкрд░ (рдореЛрдб, рдПрдХреНрд╢рди, рдЕрдиреБрд░реЛрдз)

     #dim рд╕реНрдЯреНрд░реАрдо% Stream.Object = рдЕрдиреБрд░реЛрдз рдХреЗ рд░реВрдк рдореЗрдВ

     рдЕрдЧрд░ '$ .Object (рд╕реНрдЯреНрд░реАрдо)
     {
       // MIME рд╕рдВрд▓рдЧреНрдирдХ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ
       #dim рдЗрдВрдбреЗрдХреНрд╕% Integer =% request.NextMimeData ("")
       рд╕реЗрдЯ рд╕реНрдЯреНрд░реАрдо = $ рдЪрдпрди (рдЗрдВрдбреЗрдХреНрд╕ = "": "", 1:% request.GetMimeData (рдЗрдВрдбреЗрдХреНрд╕))
     }

     рдЕрдЧрд░ $ isObject (рд╕реНрдЯреНрд░реАрдо)
     {
       #dim рджреЛрд╖% SOAP.Fault = ## рд╡рд░реНрдЧ (smev.JcpUtils) .verifySignatureOnPreSoap (рд╕реНрдЯреНрд░реАрдо)
       рдЕрдЧрд░ $ isObject (рдлреЙрд▓реНрдЯ) рд╕реЗрдЯ ..SoapFault = рдЧрд▓рддреА
     }
   }
 }

рдПрдХ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЗ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ SOAP рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд┐рдЯрд▓ рд╕рд┐рдЧреНрдиреЗрдЪрд░ рдЬрдирд░реЗрд╢рди


рдЕрдЧрд▓рд╛, рд╣рдо рдЙрд╕ рдорд╛рдорд▓реЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреА рд╕рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕рдВрдЧрдарди рдХреЗ рдИрдбреАрдПрд╕ рджреНрд╡рд╛рд░рд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╕рд┐рд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рд╡рд╛рд▓реЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рд╣реЛрд╕реНрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рдХреБрдВрдЬреА рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред Iscjcp.jar рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлрд╝реНрд▓реЙрдкреАрд╕реНрдЯреЛрд░ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рднрдВрдбрд╛рд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдПрдХ рдИрдбреАрдПрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдХреАрд╕реНрдЯреЛрд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд░реНрдЪреБрдЕрд▓ рдбрд┐рд╕реНрдХреЗрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рд╕рд┐рд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдЖрднрд╛рд╕реА рдбрд┐рд╕реНрдХреЗрдЯ рдкрд░ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдФрд░ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХрд╛ рдкреНрд▓реЗрд╕рдореЗрдВрдЯ


рдРрд╕рд╛ рдбрд┐рд╕реНрдХреЗрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрди рдЪрд░рдгреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ:
  1. рдПрдХ рдбреНрд░рд╛рдЗрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдЬреЛ рдПрдХ FDD рдбреНрд░рд╛рдЗрд╡ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, ImDisk ред
  2. рд╡рд┐рдВрдбреЛрдЬ рдХрдВрдЯреНрд░реЛрд▓ рдкреИрдирд▓ рд╕реЗ, "ImDisk Virtual Disk Driver" рд╕реЗрдЯрдЕрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓рд╛рдПрдВ рдФрд░ рдбрд┐рд╕реНрдХ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:
    • рдбреНрд░рд╛рдЗрд╡ рдЕрдХреНрд╖рд░: A,
    • рд╡рд░реНрдЪреБрдЕрд▓ рдбрд┐рд╕реНрдХ рдХрд╛ рдЖрдХрд╛рд░: 1 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ,
    • рдбрд┐рд╡рд╛рдЗрд╕ рдкреНрд░рдХрд╛рд░: рдлреНрд▓реЙрдкреАред
  3. FAT рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рд╡рд░реНрдЪреБрдЕрд▓ рдбрд┐рд╕реНрдХреЗрдЯ рдХреЛ рдлреЙрд░реНрдореЗрдЯ рдХрд░реЗрдВред
  4. FDD.zip рд╕рдВрдЧреНрд░рд╣ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ A: \ рдХреЛ рдбреНрд░рд╛рдЗрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВ ред

рдП: \ рд╕рд░реНрд╡рд░ рдбрд┐рд╕реНрдХ рдкрд░ рд╡рд░реНрдгрд┐рдд рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХрд┐рд╕реНрдЯреЛрд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдЧреБрдкреНрдд рдХреБрдВрдЬреА рд╣реИред A: \ SelfSigned.cer рдлрд╝рд╛рдЗрд▓ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╣реИ рдЬреЛ рдирд┐рдЬреА рдХреБрдВрдЬреА рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред

рдЖрдк CryptoPro JCP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреБрдВрдЬреА рдФрд░ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рд╕реНрд╡рдпрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрди рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЙрддреНрдкрд╛рдж рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдИрдбреАрдПрд╕ рдХрд╛ рдЧрдарди


рдкрд╣рд▓реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП iscjcp-cos-sources2012.zip рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде Cach├й Object Script рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ smev.JcpSignature рд╡рд░реНрдЧ рдерд╛ред рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреИрдЪ рдореЗрдВ рдЗрд╕ рд╡рд░реНрдЧ рдХреЛ рдЖрдпрд╛рдд рдХрд░реЗрдВред

рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ smev.JcpUtils рд╡рд░реНрдЧ рдЦреЛрд▓реЗрдВ рдФрд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдкреВрд░реНрдг рдкрде рдХреЗ рд╕рд╛рде CERTFILENAME рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдорд╛рди рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ - "A: \ SelfSigned.cer"ред рдпрд╣ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЙрд╕ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдХрдХреНрд╖рд╛ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВред

рдЕрдм, рд╡реЗрдм рд╕реЗрд╡рд╛ рдкрджреНрдзрддрд┐ рдореЗрдВ рд▓реМрдЯреЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рдХреЛрдб рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрдВрдХреНрддрд┐ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдиреА рд╣реЛрдЧреА:

do ..SecurityOut.AddElement (## рд╡рд░реНрдЧ (smev.JcpSignature)ред% рдирдпрд╛ ())

рдпрд╣ 2012.1 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ 2009.1 рд╕реЗ рдХреИрдЪ / рдПрдирд╕реЗрдВрдмрд▓ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ рд╡реЗрдм рд╕реЗрд╡рд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рдкреНрд░рддрд┐рд╕рд╛рдж рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ () рдкрджреНрдзрддрд┐ рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВред

 рдХреНрд▓рд╛рд╕ рдЯреЗрд╕реНрдЯ редestService% SOAP.WebService рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реИ
 {
   рдкреИрд░рд╛рдореАрдЯрд░ SERVICENAME = "TestService";

   рдкреИрд░рд╛рдореАрдЯрд░ NAMESPACE = "http: // test / wsdl";

   рд╡рд┐рдзрд┐ рдкреНрд░рддрд┐рдзреНрд╡рдирд┐ (% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрд░реЛрдз) рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ [рдкреНрд░рдХреНрд░рд┐рдпрд╛рдмрд▓рд╛рдХ = 1, рд╕рд╛рдмреБрди = "рдХрд▓рд╢: рдкреНрд░рддрд┐рдзреНрд╡рдирд┐",
        SoapBindingStyle = рджрд╕реНрддрд╛рд╡реЗрдЬрд╝, SoapBodyUse = рд╢рд╛рдмреНрджрд┐рдХ, WebMethod]
   {
      do ..SecurityOut.AddElement (## рд╡рд░реНрдЧ (smev.JcpSignature)ред% рдирдпрд╛ ())
      рдЕрдиреБрд░реЛрдз рдЫреЛрдбрд╝ рджреЗрдВ
   }

   рд╡рд┐рдзрд┐ OnPreSOAP (рдореЛрдб% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдХрд╛рд░реНрд░рд╡рд╛рдИ% рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдиреБрд░реЛрдз)
   {
     do ## рд╕реБрдкрд░ (рдореЛрдб, рдПрдХреНрд╢рди, рдЕрдиреБрд░реЛрдз)

     #dim рд╕реНрдЯреНрд░реАрдо% Stream.Object = рдЕрдиреБрд░реЛрдз рдХреЗ рд░реВрдк рдореЗрдВ

     рдЕрдЧрд░ '$ .Object (рд╕реНрдЯреНрд░реАрдо)
     {
       // MIME рд╕рдВрд▓рдЧреНрдирдХ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ
       #dim рдЗрдВрдбреЗрдХреНрд╕% Integer =% request.NextMimeData ("")
       рд╕реЗрдЯ рд╕реНрдЯреНрд░реАрдо = $ рдЪрдпрди (рдЗрдВрдбреЗрдХреНрд╕ = "": "", 1:% request.GetMimeData (рдЗрдВрдбреЗрдХреНрд╕))
     }

     рдЕрдЧрд░ $ isObject (рд╕реНрдЯреНрд░реАрдо)
     {
       #dim рджреЛрд╖% SOAP.Fault = ## рд╡рд░реНрдЧ (smev.JcpUtils) .verifySignatureOnPreSoap (рд╕реНрдЯреНрд░реАрдо)
       рдЕрдЧрд░ $ isObject (рдлреЙрд▓реНрдЯ) рд╕реЗрдЯ ..SoapFault = рдЧрд▓рддреА
     }
   }
 }

рд╡реЗрдм рд╕реЗрд╡рд╛ рдкрд░реАрдХреНрд╖рдг


Test.TestService рд╡реЗрдм рд╕реЗрд╡рд╛ рджреНрд╡рд╛рд░рд╛ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреА рдЬрд╛рдВрдЪ / рдЧрдарди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрд┐рд╕рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдКрдкрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд░рд┐рдпрд╛рдПрдВ рдХрд░реЗрдВрдЧреЗред

  1. рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдЙрд╕реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ test.TestService рдХреНрд▓рд╛рд╕ рдмрдирд╛рдПрдВ рдЬрд╣рд╛рдВ smevред * рдХрдХреНрд╖рд╛рдПрдВ рдЖрдпрд╛рдд рдХреА рдЧрдИ рдереАрдВред рдЙрдкрд░реЛрдХреНрдд рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рд╕реЗ рдирдП рд╡рд░реНрдЧ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред

  2. рдиреЛрдЯрдкреИрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВ C: \ Temp \ input.xml рдЬрд┐рд╕рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрдиреЗ рд╡рд╛рд▓реЗ SOAP рд╕рдВрджреЗрд╢ рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ рд╣реИред рд╕реЗрд╡рд╛ рд╕реЗрд╡рд╛:

     <SOAP-ENV: рдмреЙрдбреА рд╡рд╛рд╕реБ: Id = "id1"
             xmlns: SOAP-ENV = "http://schemas.xmlsoap.org/soap/envelope/"
             xmlns: wsu = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
       <s0: рдЗрдХреЛ xmlns: s0 = "http: // test / wsdl">
         <s0: request> рдирдорд╕реНрддреЗ рджреБрдирд┐рдпрд╛! </ s0: request>
       </ s0: рдЧреВрдВрдЬ>
     </ SOAP-ENV: рдмреЙрдбреА>
    

    рдлрд╝рд╛рдЗрд▓ рдХреЛ UTF-8 рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд╛рд╕реВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ: рд╢рд░реАрд░ рдХреЗ рдореВрд▓ рддрддреНрд╡ рдХреА рдЖрдИрдбреА рд╡рд┐рд╢реЗрд╖рддрд╛ред

    рддреИрдпрд╛рд░ input.xml рдлрд╝рд╛рдЗрд▓ xmls.zip рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИред

  3. Cach├й рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ smF.JcpUtils рд╡рд░реНрдЧ рдХрд╛ рд╕рд╛рдЗрдирдлрд╛рдЗрд▓ () рд╡рд┐рдзрд┐ рдЪрд▓рд╛рдПрдБ:
    ## рд╡рд░реНрдЧ (smev.JcpUtils) .signFile ("id1", "C: \ Temp \ input.xml", "C: \ Temp \ output.xml" рд▓рд┐рдЦреЗрдВ

    рд╣рдо рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рд╡рд┐рдзрд┐ рдХреЗ рдХрд╛рд░реНрдп рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдПрдХ рдлрд╝рд╛рдЗрд▓ C: \ Temp \ output.xml рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд SOAP рд╕рдВрджреЗрд╢ (Envelope) рдпреБрдХреНрдд рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛: рд╢реАрд░реНрд╖ рд▓реЗрдЦ (рд╣реИрдбрд░) рдореЗрдВ WS- рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдФрд░ рдирд┐рдХрд╛рдп рд╣реИ XML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ input.xml рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

    рддреИрдпрд╛рд░ рдЖрдЙрдЯрдкреБрдЯред Xml рдлрд╝рд╛рдЗрд▓ xmls.zip рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИред

  4. рдЖрдЗрдП рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд SOAP рд╕рдВрджреЗрд╢ рдХреЛ test.TestService рд╕реЗрд╡рд╛ рдХреЗ рдЗрдирдкреБрдЯ рдкрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Cach├й рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ (рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкреЛрд░реНрдЯ рдХреЛ рдмрджрд▓реЗрдВ - "57772" рд╕рд╣реА рдПрдХ рдХреЗ рд╕рд╛рде-рд╕рд╛рде, "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛" рдХреНрд╖реЗрддреНрд░ рдХреЛ рдкреНрд░рдерд╛рдЧрдд рдХрдорд╛рдВрдб рдореЗрдВ):

      рд╕реЗрдЯ рдХрд░реЗрдВ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП # ## рд╡рд░реНрдЧ (% Net.HttpRequest)ред% рдирдпрд╛ ()
     setprequest.Server = "localhost" рд╕реЗрдЯ рдХрд░реЗрдВ
     рд╕реЗрдЯ рдХрд░реЗрдВ
     setprequestest.WriteRawMode = 1
     setprequest.ContentType = "text / xml" рд╕реЗрдЯ рдХрд░реЗрдВ
     dopreququest.SetHeader ("SOAPAction", "рдХрд▓рд╢: рдЧреВрдВрдЬ")
     fileStream = ## рд╡рд░реНрдЧ (% Library.FileBinaryStream) рд╕реЗрдЯ рдХрд░реЗрдВред% рдирдпрд╛ ()
     fileStream.Filename = "C: \ Temp \ output.xml" рд╕реЗрдЯ рдХрд░реЗрдВ
     doprequest.EntityBody.CopyFrom (fileStream) рдХрд░реЗрдВ
     dopreprequest.Post ("/ csp / user / test.TestService.cls")
     doprequest.ttpResponse.OutputToDevice ()
    

    рдпрджрд┐ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢ рдХреЗ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдлрд┐рд░ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рд╕рдВрджреЗрд╢ рдХрд╛ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЯрд░реНрдорд┐рдирд▓ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рдХреА рд╡реЗрдм рд╕реЗрд╡рд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:

    HTTP / 1.1 200 рдареАрдХ рд╣реИ
    CACHE-CONTROL: рдиреЛ-рдХреИрд╢
    рдХрдиреЗрдХреНрд╢рди: рдХрд░реАрдм
    рдХрдВрдЯреЗрдВрдЯ-рд▓реЗрдВрдЧреНрде: реирейрелреи
    рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░: рдкрд╛рда / xml; charset = utf-8
    DATE: Thu, 01 Dec 2011 20:08:40 GMT
    рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ: рдЧреБрд░реБ, 29 рдЕрдХреНрдЯреВрдмрд░ 1998 17:04:19 GMT
    PRAGMA: рдиреЛ-рдХреИрд╢
    рд╕рд░реНрд╡рд░: рдЕрдкрд╛рдЪреЗ
    SET-COOKIE: CSPSESSIONID-SP-57774-UP-csp-user- = 0000000100001odLhtp000000igxIuSVnd12z6BtrSIFFJA--; рдкрде = / csp / рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ /;

    <? xml рд╕рдВрд╕реНрдХрд░рдг = "1.0" рдПрдиреНрдХреЛрдбрд┐рдВрдЧ = "UTF-8"?>
    <SOAP-ENV: рд▓рд┐рдлрд╛рдлрд╛ xmlns: SOAP-ENV = 'http: //schemas.xmlsoap.org/soap/envelope/' xmlns: xsi = 'http: //www.w3n/2001/XMLSchema-instance' xmlns : s = 'http: //www.w3.org/2001/XMLSchema' xmlns: wsse = 'http: //docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext -1.0.xsd 'xmlns: wsu =' http: //docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd>
    <SOAP-ENV: рд╣реИрдбрд░>
    <рд╕реБрд░рдХреНрд╖рд╛ xmlns = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <ds: рд╣рд╕реНрддрд╛рдХреНрд╖рд░ xnns: ds = "http: / /www.w3.org/2000/09/xmldsig # ">
    <ds: рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд>
    <ds: CanonicalizationMethod рдПрд▓реНрдЧреЛрд░рд┐рдердо = "http://www.w3.org/2001/10/xml-exc-c14n#" />
    <ds: рд╕рд┐рдЧреНрдиреЗрдЪрд░рдореИрдереЛрдб рдПрд▓рдЧреЛрд░рд┐рджрдо = "http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411" />
    <ds: рд╕рдВрджрд░реНрдн URI = "# рд╢рд░реАрд░- B290AFEC-9812-49E4-9177-6D617D30622C">
    <ds: рд░реВрдкрд╛рдВрддрд░рдг>
    <ds: рд░реВрдкрд╛рдВрддрд░рдг рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо = "http://www.w3.org/2001/10/xml-exc-c14n#" />
    </ ds: рд░реВрдкрд╛рдВрддрд░рдг>
    <ds: DigestMethod рдПрд▓реНрдЧреЛрд░рд┐рдердо = "http://www.w3.org/2001/04/xmldsig-more#gostr3411" />
    <ds: DigestValue> vs42sfoxCX8naSV2NnBSoIoCvUb1ydvvyNnp5XC7nKQ = </ ds: DigestValue>
    </ ds: рд╕рдВрджрд░реНрдн>
    </ ds: рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд>
    <ds: рд╕рд┐рдЧреНрдиреЗрдЪрд░рд╡реИрд▓реВ>
    ES4aVXFSkHr1cnXUcdZYJTPTa + e5 // ASQRYhrRMy46pWSwRW93VxgrW + GhATD2xwK3l + 8TDDfsi2
    beVfrkQS0g ==
    </ ds: рд╕рд┐рдЧреНрдиреЗрдЪрд░рд╡реИрд▓реВ>
    <ds: KeyInfo>
    <ds: X509Data>
    <ds: X509Certificate>
    MIIB9TCCAaSgAwIBAgIIRdAY3dqebKUwCAYGKoUDAgIEMCkxJzAlBgNVBAMeHgB0AC4AZQAuAG0A
    LgBwAEAAbQBhAGkAbAAuAHIAdTAeFw0xMTExMjkxMzQwMTFaFw0xMjExMjkxMzQwMTFaMCkxJzAl
    BgNVBAMeHgB0AC4AZQAuAG0ALgBwAEAAbQBhAGkAbAAuAHIAdTBjMBwGBiqFAwICEzASBgcqhQMC
    AMBBgcqhQMCAh4BA0MABECebxtl5EDpwaWKy2MeJQ7v + NCiIRHiXBeqaqJnNi5AS4aW / 14FKKHH
    Llu7jjggB06d + / 4U29OtDjjfIkPqRUcio4GtMIGqMB0GA1UdDgQWBBTZ0qujqn + CC09L1aSv39a
    ga3EhDALBgNVHQ8EBAMCAcYwYDVR0lBAwwCgYIKwYBBHAHAMMWDYYWRWBBE / wIBATBW
    BgNVHQEETzBNgBTz0qujqn + CC0O9L1aSv39aga3EhKErMCkxJzAlBgNVBAMeHgB0AC4QQAuAG0A
    LgBwAEAAbQBhAGkAbAAuAHIAdYIIRdAY3dqebKUwCAYGKoUDAgIEA0EANUalM3ag0xYJ7MqzmCzh
    w8ejPqUds37UXKadbyqogZ2yJBMbhWUCsQFyZZZzfc6gXQbRThBTAftfdXxjW8Yusg ==
    </ ds: X509Certificate>
    </ ds: X509Data>
    </ ds: KeyInfo>
    </ ds: рд╣рд╕реНрддрд╛рдХреНрд╖рд░>
    </ рд╕реБрд░рдХреНрд╖рд╛> </ SOAP-ENV: рд╣реИрдбрд░>
    <SOAP-ENV: Body wsu: Id = "Body-B290AFEC-9812-49E4-9177-6D617D30622C"> <echoResponse xmlns = "http: test / wsdl"> <echoResult> рдирдорд╕реНрдХрд╛рд░ рджреБрдирд┐рдпрд╛ </ echoResult> <! / echoResponse> </ SOAP-ENV: рдмреЙрдбреА>
    </ SOAP-ENV: рд▓рд┐рдлрд╛рдлрд╛>



рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

Source: https://habr.com/ru/post/In137145/


All Articles