Postado Março 25, 2021 4 anos [TUTORIAL] [UBUNTU] Como gerar e configurar uma nova chave RSA Este tutorial pode ser útil para você deixar o uso obrigatório do seu client customizado para o seu servidor. Para seguir este tutorial você precisará ter o OpenSSL instalado. Consultando se o seu sistema já tem OpenSSL Spoiler openssl version -a Gerando a chave RSA Primeiramente, vamos gerar uma nova chave RSA exclusiva Spoiler openssl genrsa -out key.pem 1024 Assim que gerado, será criado um arquivo "key.pem" no diretório em que você está, esta será a sua chave RSA. Execute agora o seguinte comando Spoiler openssl rsa -in key.pem -outform PEM -pubout -out public.pem Após executado o comando acima, será criado um arquivo "public.pem" neste mesmo diretório. Esta é a sua RSA pública. Precisamos agora converter a chave RSA publica em hexadecimal para decimal, somente desta forma será aceito no Servidor e no OTClient. Antes de tudo será necessário tratar a RSA pública, portando execute os comandos abaixo: Spoiler openssl asn1parse -in public.pem Após executar o comando acima o terminal deve printar algo como isso: Spoiler 0:d=0 hl=3 l= 159 cons: SEQUENCE 3:d=1 hl=2 l= 13 cons: SEQUENCE 5:d=2 hl=2 l= 9 prim: OBJECT :rsaEncryption 16:d=2 hl=2 l= 0 prim: NULL 18:d=1 hl=3 l= 141 prim: BIT STRING Em seguida execute o comando abaixo: Spoiler openssl asn1parse -in public.pem -strparse 18 Após executar o comando acima o terminal deve printar algo como isso: Spoiler 0:d=0 hl=3 l= 137 cons: SEQUENCE 3:d=1 hl=3 l= 129 prim: INTEGER :A67E67F1BB0330A9BFEAB7306DDE4DE4EED66714519E0A97B096DCAAE35014EE 400BA718DBBFBD1065CAEB6029CAF6A6D5FA8F53C9154FB04BAB993CC051453CF00B71E1DC11DA0962BBFC770D8B855D65C1D953AEBB3CCD1A6BC70C3CB5EAC2B97FC1FAA20C322A732D4CF160DAE16FD028E13D54B52EC815BBF57CDD37184F 135:d=1 hl=2 l= 3 prim: INTEGER :010001 Agora para realizar a conversão de Hex para Decimal utilize o seguinte site: Hexadecimal to Decimal Converter (rapidtables.com) A sua RSA deve ter obrigatoriamente 309 caracteres. Configurando a Chave RSA no OTClient Agora entre no seguinte caminho modules/gamelib/ do OTClient e abra o arquivo const.lua Procure por OTSERV_RSA, você encontrará algo como isto: Spoiler OTSERV_RSA = "1091201329673994292788609605089955415282375029027981291234687579" .. "3726629149257644633073969600111060390723088861007265581882535850" .. "3429057592827629436413108566029093628212635953836686562675849720" .. "6207862794310902180176810615217550567108238764764442605581471797" .. "07119674283982419152118103759076030616683978566631413" Apague e insira a sua chave RSA pública já em Decimal, quando inserir indico deixar tudo em uma linha, como exemplo abaixo: Spoiler OTSERV_RSA = "109120132967399429278860960508995541528237502902798129123468757937266291492576446330739696001110603907230888610072655818825358503429057592827629436413108566029093628212635953836686562675849720620786279431090218017681061521755056710823876476444260558147179707119674283982419152118103759076030616683978566631413" Não é necessário mexer na CIPSOFT_RSA. Configurando a Chave RSA no Servidor Substitua o seu novo arquivo gerado key.pem pelo mesmo arquivo localizado na pasta do seu servidor. Considerações Finais Pronto! Melhoria concluída com sucesso! Após isso só será possível efetuar login em seu servidor com um client que tem a sua RSA pública configurada. Créditos: @Cjaker Sun Marcos Pacheco @Breno Alves @EddyHavoc @Cat Editado Março 25, 2021 4 anos por EddyHavoc (veja o histórico de edições)
Postado Março 25, 2021 4 anos Obrigado pela contribuição @EddyHavoc, são poucos conteudo se tratando de RSA na internet.
Postado Março 25, 2021 4 anos Contribuição excelente @EddyHavoc, obrigado pelo conteúdo! Vai ajudar muita gente.
Postado Janeiro 28, 2022 3 anos Boa noite, man! Ótimo conteúdo! Só uma dúvida... pra por na posta do servidor, precisa das keys private, prime, modulus, exponent... sabe como consigo?
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.