<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><o:SmartTagType
 namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="PersonName"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:blue;
        text-decoration:underline;}
span.EstiloDeEmail17
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:595.3pt 841.9pt;
        margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.Section1
        {page:Section1;}
-->
</style>

</head>

<body lang=PT-BR link=blue vlink=blue>

<div class=Section1>

<p class=MsoNormal><font size=5 face="Times New Roman"><span style='font-size:
20.0pt'>Documentação EPP<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><b><font size=3 face="Times New Roman"><span
style='font-size:12.0pt;font-weight:bold'>Descrição do funcionamento EPP<o:p></o:p></span></font></b></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>A comunicação com registro.br atrávez do protocolo epp exigi que todos
os comandos de envio e resposta para o servidor sejam através de xml.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>A conexão com servidor exigi 3 certificados, root.der instalado no
servidor em (<b><i><span style='font-weight:bold;font-style:italic'>autoridade
de certificado na raiz confiavel</span></i>), </b>o certificado client.der e o
client.p12 são carregados através da aplicação. Os certificados foram gerados 
com OPENSSL através dos arquivos .pem baixados da biblioteca disponibilizada
pela registro.br<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Para enviar as informações do xml, o xml foi convertido para bytes e
são enviadas atraves do metodo “send”  que depois convert o byte
para string para exibir a resposta do servidor<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Links para documentação disponibilizada pela registro.br : <a
href="http://registro.br/info/epp/">http://registro.br/info/epp/</a><o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>Links adicionais <o:p></o:p></span></font></p>

<table class=MsoNormalTable border=0 cellpadding=0 width="98%"
 style='width:98.44%'>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><a name=RFC4930><b><font size=2 color=black face=Verdana><span
  style='font-size:10.0pt;font-family:Verdana;color:black;font-weight:bold'>[1]</span></font></b></a><font
  size=2 color=black face=Verdana><span style='font-size:10.0pt;font-family:
  Verdana;color:black'><o:p></o:p></span></font></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black'>Hollenbeck, S.,
  “</span></font><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="ftp://ftp.isi.edu/in-notes/rfc4930.txt"><span lang=EN-US>Extensible
  Provisioning Protocol (EPP)</span></a></span></font><font size=1 color=black
  face=Verdana><span lang=EN-US style='font-size:8.0pt;font-family:Verdana;
  color:black'>,” RFC 4930, <o:p></o:p></span></font></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><a name=RFC4931><b><font size=2 color=black face=Verdana><span
  style='font-size:10.0pt;font-family:Verdana;color:black;font-weight:bold'>[2]</span></font></b></a><font
  size=2 color=black face=Verdana><span style='font-size:10.0pt;font-family:
  Verdana;color:black'><o:p></o:p></span></font></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black'>Hollenbeck, S.,
  “</span></font><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="ftp://ftp.isi.edu/in-notes/rfc4931.txt"><span lang=EN-US>Extensible
  Provisioning Protocol (EPP) Domain Name Mapping</span></a></span></font><font
  size=1 color=black face=Verdana><span lang=EN-US style='font-size:8.0pt;
  font-family:Verdana;color:black'>,” RFC 4931<o:p></o:p></span></font></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><a name=RFC4933><b><font size=2 color=black face=Verdana><span
  style='font-size:10.0pt;font-family:Verdana;color:black;font-weight:bold'>[3]</span></font></b></a><font
  size=2 color=black face=Verdana><span style='font-size:10.0pt;font-family:
  Verdana;color:black'><o:p></o:p></span></font></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black'>Hollenbeck, S.,
  “</span></font><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="ftp://ftp.isi.edu/in-notes/rfc4933.txt"><span lang=EN-US>Extensible
  Provisioning Protocol (EPP) Contact Mapping</span></a></span></font><font
  size=1 color=black face=Verdana><span lang=EN-US style='font-size:8.0pt;
  font-family:Verdana;color:black'>,” RFC 4933<o:p></o:p></span></font></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><a name=RFC4934><b><font size=2 color=black face=Verdana><span
  style='font-size:10.0pt;font-family:Verdana;color:black;font-weight:bold'>[4]</span></font></b></a><font
  size=2 color=black face=Verdana><span style='font-size:10.0pt;font-family:
  Verdana;color:black'><o:p></o:p></span></font></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black'>Hollenbeck, S.,
  “</span></font><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="ftp://ftp.isi.edu/in-notes/rfc4934.txt"><span lang=EN-US>Extensible
  Provisioning Protocol (EPP) Transport Over TCP</span></a></span></font><font
  size=1 color=black face=Verdana><span lang=EN-US style='font-size:8.0pt;
  font-family:Verdana;color:black'>,” RFC 4934<o:p></o:p></span></font></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><a name=I-D.neves-epp-brdomain><b><font size=2
  color=black face=Verdana><span style='font-size:10.0pt;font-family:Verdana;
  color:black;font-weight:bold'>[5]</span></font></b></a><font size=2
  color=black face=Verdana><span style='font-size:10.0pt;font-family:Verdana;
  color:black'><o:p></o:p></span></font></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black'>Neves, F. and H.
  Kobayashi, “</span></font><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="http://www.ietf.org/internet-drafts/draft-neves-epp-brdomain-03.txt"><span
  lang=EN-US>BR Domain Mapping for the Extensible Provisioning Protocol (EPP)</span></a></span></font><font
  size=1 color=black face=Verdana><span lang=EN-US style='font-size:8.0pt;
  font-family:Verdana;color:black'>,”<o:p></o:p></span></font></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><a name=I-D.neves-epp-brorg><b><font size=2 color=black
  face=Verdana><span style='font-size:10.0pt;font-family:Verdana;color:black;
  font-weight:bold'>[6]</span></font></b></a><font size=2 color=black
  face=Verdana><span style='font-size:10.0pt;font-family:Verdana;color:black'><o:p></o:p></span></font></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black'>Neves, F. and H.
  Kobayashi, “</span></font><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="http://www.ietf.org/internet-drafts/draft-neves-epp-brorg-03.txt"><span
  lang=EN-US>BR Organization Mapping for the Extensible Provisioning Protocol
  (EPP)</span></a></span></font><font size=1 color=black face=Verdana><span
  lang=EN-US style='font-size:8.0pt;font-family:Verdana;color:black'>,”<o:p></o:p></span></font></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><b><font size=2 color=black face=Verdana><span lang=EN-US
  style='font-size:10.0pt;font-family:Verdana;color:black;font-weight:bold'><o:p> </o:p></span></font></b></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><b><font size=1 color=black face=Verdana><span lang=EN-US
  style='font-size:8.0pt;font-family:Verdana;color:black;font-weight:bold'>Principal<o:p></o:p></span></font></b></p>
  </td>
 </tr>
 <tr>
  <td valign=top style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><b><font size=2 color=black face=Verdana><span
  style='font-size:10.0pt;font-family:Verdana;color:black;font-weight:bold'>[0]<o:p></o:p></span></font></b></p>
  </td>
  <td width="92%" style='width:92.68%;padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal><font size=1 color=black face=Verdana><span
  style='font-size:8.0pt;font-family:Verdana;color:black'><a
  href="http://coders.meta.net.nz/~perry/rfc/keyword-epp.html">http://coders.meta.net.nz/~perry/rfc/keyword-epp.html</a><o:p></o:p></span></font></p>
  </td>
 </tr>
</table>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Se aquiser adiciona no msn “ <a
href="mailto:lipe_hc1@hotmail.com">lipe_hc1@hotmail.com</a> “<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabindex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>De:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>
eppnicbr-bounces@eng.registro.br [mailto:eppnicbr-bounces@eng.registro.br] <b><span
style='font-weight:bold'>Em nome de </span></b>Luiz Fernando Duarte Junior<br>
<b><span style='font-weight:bold'>Enviada em:</span></b> sexta-feira, 20 de
junho de 2008 15:48<br>
<b><span style='font-weight:bold'>Para:</span></b> <st1:PersonName w:st="on">EPP
 no .br - protocolo e operacao</st1:PersonName><br>
<b><span style='font-weight:bold'>Assunto:</span></b> Re: [Eppnicbr] Ajuda <st1:PersonName
ProductID="em Conexão Epp C" w:st="on">em Conexão Epp C</st1:PersonName>#</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>Boa tarde Carlos,<br>
<br>
sua ajuda é muito bem vinda. <br>
Atualmente estou lendo muito a respeito de certificados X509 para tentar
entendê-los um pouco, uma vez que nunca tive experiências anteriores com
protocolos e criptografia.<br>
Baixei a solução de cliente Epp do Registro.br (shepp) mas não consegui
compreender direito a parte de conexão deles, uma vez que não conheço muito C++
e a biblioteca OpenSSL que eles utilizaram para fazer a conexão (eles declaram
alguns objetos BIO* que estão fora de meu conhecimento).<br>
<br>
Estou desenvolvendo em cima de exemplos que encontro na Internet e de
"traduções de códigos" do Shepp(C++) para C#, não tenho problemas com
arquitetura e compreendi bem a parte da comunicação XML (Commands e Responses).
O meu maior problema é a bendita conexão com o <a href="http://registro.br">registro.br</a>.
O meu código de conexão é o seguinte:<br>
<br>
Cliente eppClient = new Cliente("<a href="http://beta.registro.br">beta.registro.br</a>",
700, X509Certificate.CreateFromSignedFile(@"C:\Users\luiz\Documents\certificados\client.der"));<br>
               
eppClient.CertificadoServidor =
X509Certificate.CreateFromSignedFile(@"C:\Users\luiz\Documents\certificados\root.der");<br>
               
eppClient.Connect();<br>
<br>
Onde o método Connect faz o seguinte:<br>
<br>
TCPClient client = new TcpClient(this._servidor, this._porta);<br>
               
client.Connect("<a href="http://beta.registro.br">beta.registro.br</a>",
700);<br>
<br>
               
SslStream sslStream = new SslStream(client.GetStream(), false, new RemoteCertificateValidationCallback(CertificateValidationCallback),
null);<br>
               
sslStream.AuthenticateAsClient(this._servidor, this._certificados,
SslProtocols.Default, false);<br>
               
ReadResponse(client);<br>
<br>
Mas ocasiona este erro:<br>
<br>
EppException:An error occurred when accessing the socket. See the Remarks
section for more information. Exceptions message is: Uma requisição de conexão
foi feita em um soquete já conectado <br>
<br>
Tens alguma idéia do que possa estar ocasionando isto ?<br>
<br>
<o:p></o:p></span></font></p>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>2008/6/19 Carlos Eduardo Rizzo <<a
href="mailto:carlos.rizzo@tecla.com.br">carlos.rizzo@tecla.com.br</a>>:<o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>Luiz eu fiz a
implementação em C#  e já esta homologuei <br>
<br>
<o:p></o:p></span></font></p>

<div>

<div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'>On Thu, Jun 19, 2008 at 5:09 PM, Luiz Fernando Duarte Junior <<a
href="mailto:luizfduartejr@gmail.com" target="_blank">luizfduartejr@gmail.com</a>>
wrote:<o:p></o:p></span></font></p>

</div>

</div>

<blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;
margin-left:4.8pt;margin-right:0cm'>

<div>

<div>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>Boa tarde a todos,<br>
<br>
estou tendo diversos problemas por inexperiência em protocolos de rede e
certificados.<br>
<br>
Se alguém que já implementou um cliente epp em c# e/ou para se comunicar com o
Registro.BR puder me ajudar eu agradeceria. Fontes são bens vindo :)<br>
<br>
Grato.<o:p></o:p></span></font></p>

</div>

</div>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>_______________________________________________<br>
eppnicbr mailing list<br>
<a href="mailto:eppnicbr@eng.registro.br" target="_blank">eppnicbr@eng.registro.br</a><br>
<a href="https://eng.registro.br/mailman/listinfo/eppnicbr" target="_blank">https://eng.registro.br/mailman/listinfo/eppnicbr</a><o:p></o:p></span></font></p>

</blockquote>

</div>

<p class=MsoNormal style='margin-bottom:12.0pt'><font size=3 color="#888888"
face="Times New Roman"><span style='font-size:12.0pt;color:#888888'><br>
<br clear=all>
<br>
-- <br>
C.E. Rizzo<br>
Analista Programador<br>
</span></font><br>
_______________________________________________<br>
eppnicbr mailing list<br>
<a href="mailto:eppnicbr@eng.registro.br">eppnicbr@eng.registro.br</a><br>
<a href="https://eng.registro.br/mailman/listinfo/eppnicbr" target="_blank">https://eng.registro.br/mailman/listinfo/eppnicbr</a><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

</div>

</body>

</html>