Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 4635 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

function StringCrc16(AString : AnsiString ):word;

Queria saber ao certo o que faz esta função , pra que serve ?

Outras coisa . percebi que de um texto ele tranforma e numeros . queria sabe se existe algum funcao que faz o

inverso desta StringCrc16 ?

Obrigado .

Adilson Pazzini .

  • Fundadores
Postado

Ela calcula um HASH ou CRC ou ainda um número verificador se uma determinada string.

O crc16 é fraco em segurança comparado com MD5, más é rápido e fácil de calcular.

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Postado

Entendi Daniel . valeu pela resposta , até na verdade , eu vi tambem a função Cript , tava vendo no codigo

do ACBRNFeMonitor , e é usado pra gerar as senhas do mesmo , é que vi q no arquivo ini do monitor , fica com

uma codificação tipo , da impressao q é em Hexadecimal . mais internamente qndo visualizo em texto . tipo dentro de um edit

ficao com uns caracteres diferentes . Vi q na funcao la . ele grava como writebinarystream . é por isso q nao fica igual ao

resultado do StrCrytp ..?

Adilson Pazzini

  • Fundadores
Postado

A função StrCript irá gerar caracteres de toda faixa da tabela ASCII, ou seja #0, a #255... alguns desses caracteres não podem ser gravados em arquivos, Exemplo: #26 ou Ctrl-Z fecha um arquivo TXT...

Para resolver isso existem funções nessa mesma Unit que convertem um AnsiString para Hexa e vice-versa...

function BinaryStringToString(const AString: AnsiString): AnsiString;

function StringToBinaryString(const AString: AnsiString): AnsiString;

a função writebinarystream faz algo semelhante

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Postado

Era isso mesmo que eu queria . valeu Velho ...

Ate o que eu achei bacana do StringCrc16 , é que tipo uma palavra

adilson , gera um hash com uma numeração e se eu fizer a mesma funcao pra outra palavra

tipo so trocar o n pelo m em adilsom , ele gera outra numeração totalmente diferente ..

ex: Usando StringCrc16 .

StringCrc16(adilson) = 00031844 ; //--com n no final

StringCrc16(adilsom) = 00032036; //--com m no final ...

strings totalmente diferentes . mesmo que os 6 primeiros caracteres sejam iguais ...

fica bem mais dificio de decifrar , sendo que pelo StrCrypt , Nao acontece o mesmo , tipo se fizer o mesmo

processo de cima , ele so altera a ultima letra

encrypitada ...

ex: Usando StrCrypt

StrCrypt('adilson',pass) = =FF8. ;//--com n no final

StrCrypt('adilsom',pass) = =FF8- ; //--com m no final ...

Neste exemplo so muda a ultima letre mesmo ....

pena q nao exista uma volta para StringCrc16 . pra esse caso .

Adilson Pazzini .

  • Fundadores
Postado

Talvez com uma chave maior gere mais diferenças... mas não espere grandes resultados...

No caso de senhas, é comum gravar apenas o Hash da senha, e nao a senha em si.. nem mesmo a senha criptografada...

Assim quando o usuário digitar a senha dele, vc re-computa o hash e compara com o do Banco de dados...

  • Curtir 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

  • Este tópico foi criado há 4635 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.