From 18 Jan, 2021 0:00 UTC: All services will be temporary unavailable for maintenance
  • R/O
  • SSH
  • HTTPS

akdf: List of commits


RSS
Rev. Tiempo Autor
r532 2020-12-09 06:40:46 derekwildstar

> Incluído o exemplo e o arquivo de cabeçalho do CryptXML na documentação
> KRK.Xml.CryptXml.pas foi revisado e os hits SAS foram adicionados
> A variável InputFileBase64 agora está sendo zerada antes de ser usada. Isso parece ser obrigatório para estruturas do CryptXml
> Testador atualizado e a funcionalidade de assinatura de XML foi testada com sucesso (Enveloping e Enveloped) ainda falta implementar a verificação

r531 2020-11-29 02:57:57 derekwildstar

> Função para verificação de XML-DSIG concluída

r530 2020-11-24 05:14:15 derekwildstar

> Documentação atualizada
> XmlDSigCreate concluída!

r529 2020-11-23 08:09:34 derekwildstar

> Mais evoluções do CryptXML

r528 2020-11-20 06:07:49 derekwildstar

> Criadas as funções StringToBinary e AnsiStringToBinary
> BytesToBase64Binary comentada (ainda há algum lixo em KRK.Rtl.Sys.System.pas
> Ajustes em variáveis de SelectCertificate. Isso simplificou o código subsequente
> Ajuste em comentários de KRK.Xml.CryptXml.pas
> Implementação básica de XmlDSigCreate quase concluída. Corpo de XmlDSigVerify adicionad

r527 2020-11-13 03:34:06 derekwildstar

> Adicionados arquivos relacionados ao CryptXML
> Ajustes cosméticos
> Criado o tipo PBCRYPT_KEY_HANDLE
> Criado o tipo PHCRYPTPROV_OR_NCRYPT_KEY_HANDLE
> KRK.Rtl.Win.WinCrypt.Utilities contém implementação usando MSXML5 para assinar XMLs. Eu estava no meio de uma melhoria nessas rotinas quando descobri o CryptXML, portanto o código existente neste arquivo está potencialmente incorreto!

r526 2020-11-07 06:30:22 derekwildstar

KRK.Rtl.Win.WinCrypt.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> A função CryptGenKey foi corrigida
> A função CryptGetUserKey foi corrigida
> A constante CERT_SIGN_HASH_CNG_ALG_PROP_ID foi adicionada

KRK.Rtl.Win.WinCrypt.Utilities.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Iniciada a correção da função XMLSign considerando que o algoritmo de assinatura não pode ser livremente escolhido
> A alteração ainda não foi concluída
> GetKeyContainerInfo agora é GetCertificateKeyContainerInfo
> Criada a função GetCertificateSignatureAlgorithm
> Criada a função GetKeyPair
> Criada a função DeleteKeySet
> Removidas referências parametrizadas a <SignatureMethod> nos templates
> Outros ajustes que não sei como descrever
> Contém erros!

r525 2020-10-28 02:01:20 derekwildstar

Geral
¯¯¯¯¯
> Ajustes para adequação ao Delphi 2006

UTF-8.NFe.xml e ISO-8859-1.NFe.xml
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Exemplos de xmls de nota fiscal eletrônica

Observações: Este commit está sendo feita após a descoberta do ransomware na maquina do TJPE

r524 2020-10-26 01:34:51 derekwildstar

KRK.Rtl.Win.WinCrypt.Utilities.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Concluída a função XMLVerifySign

UDAMOPrincipal.dfm
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Ajustes na caixa de diálogo de abrir arquivo a assinar

UFRAMAssinaturaEmXML.dfm e UFRAMAssinaturaEmXML.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Regras básicas para abertura de arquivos a assinar implementadas
> Implementado o validador de assinatura em XML

Diversos
¯¯¯¯¯¯¯¯
> Adicionados arquivos de exemplo para realização de assinatura digital usando XML

r523 2020-10-23 05:57:55 derekwildstar

KRAKATOA.D26++.groupproj
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Remoção de projetos de testes

KRK.Rtl.Common.FileUtils.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Criação dos procedures SaveTextFile, LoadFile e SaveFile. Os dois últimos carregam ou salvam Ponteiros PByte que não são afetados por encodings. Já SaveTextFile utiliza SaveFile para salvar corretamente arquivos em codificação utf-8 ou ANSI, sem interferência da plataforma ANSI ou UNICODE

KRK.Rtl/Sys/KRK.Rtl.Sys.System.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> As duas funções StringLengthInBytes (overloaded) foram substituídas por 3 funções de nomes distintos: UTF8StringSize, UnicodeStringSize e AnsiStringSize

KRK.Rtl.Win.WinCrypt.Utilities.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> O retorno da função XMLSign agora é um record (TXMLSignReturn) para facilitar o salvamento do XML assinado

KRK.Xml.MsXml5.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Ajustes para adequação ao Delphi 10

UFRAMAssinaturaEmXML.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> O salvamento dos arquivos assinados leva em conta o encoding do XML (cabeçalho)

r522 2020-10-22 09:03:57 derekwildstar

KRK.Rtl.Common.Classes.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Criada a exceção EKernel

KRK.Rtl.Common.FileUtils.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Criado a procedure LoadFile, que carrega um arquivo em um PByte

KRK.Rtl.Sys.System.pas e KRK.Rtl.Win.CNG.Utilities.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Comentários adicionados

KRK.Rtl.Win.WinCrypt.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Comentários removidos

KRK.Rtl.Win.WinCrypt.Utilities.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Novos membros adicionados em TXMLSignParams
> Opção "Eveloping" da assinatura XML concluída!

UFRAMAssinaturaEmXML.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Ajuste em SelectedIndex

r521 2020-10-21 06:54:10 derekwildstar

Pacotes para o projeto KRKLib de todos os Delphis criados

r520 2020-10-21 06:38:23 derekwildstar

KRK.Rtl.Win.WinCrypt.Utilities.pas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
> Criada a função GetProviderKeyContainerNames, mas ela ainda não foi extensivamente testada. Ela traz valores, mas eles não parecem corretos quando comparados com comandos de certutil
> Ajustada a função AddCertificate para que novos nós criados pertençam ao mesmo namespace do nó pai
> Criada a função AdjustedXML, que retorna o XML final com o certificado incluído e com o cabeçalho XML preenchido corretamente de acordo com o atributo encoding do XML original carregado
> Comentários removidos

Testador
¯¯¯¯¯¯¯¯
> Adicionado um frame para seleção de certificados
> Adicionada uma unit de classes que atualmente contém apenas uma interposer para TComboBox
> Removida codificação que existia em UFRAMAssinaturaEmXML.pas e colocada em UFRAMSelecionarCertificado.pas
> Incluída codificação centralizada em UPrincipal para carregar combos de todos os frames

r519 2020-10-19 22:18:24 derekwildstar

> Comentários sobre namespaces sem prefixo adicionados
> KRK.Xml.MsXml.pas renomeado para KRK.Xml.MsXml6.pas
> Adicionado KRK.Xml.MsXml5.pas
> Comentários de depreciação adicionados
> Documentação de BytesToString atualizada
> Função BytesToString corrigida para considerar caracteres ao invés de bytes no retorno da obtenção do tamanho do buffer
> Nova função XMLSign adicionada, bem como estruturas necessárias para seu funcionamento
> Variável renomeada na função GetProviderFromIndex
> Correções na função GetProviders
> Ajustes para adequação às mudanças de nomes de algumas units
> Testador atualizado com um DataModule e um Frame que contém o exemplo de assinatura em xml

r518 2020-10-13 23:38:33 derekwildstar

> Ajuste em diretiva para usar >=
> Ajuste em UnHookModulesTabSetPopUpMenu para que só se use TObject a partir do Delphi Tokyo, já que o Delphi Berlin não aceita TObject nesta implementação

r517 2020-10-13 23:30:25 derekwildstar

> Alterada uma diretiva de compilação para incluir ANYSIZE_ARRAY também no Delphi 24

r516 2020-10-13 23:16:22 derekwildstar

> Ajuste em GetKeyContainerInfo
> Alterada uma diretiva de compilação para incluir GetFileSizeEx também no Delphi 24

r515 2020-10-13 08:55:09 derekwildstar

> Ajustes em projetos (dproj e groupproj)
> Correções básicas do WinCrypt
> Nova função GetKeyContainerInfo criada
> Adequação do EnumeCert para o novo KRK
> Adequação de WinSCard para o novo KRK
> Adequação de Secure Protocols Tester para o novo KRK
> Adequação de Testador para o novo KRK

r514 2020-07-14 00:25:24 derekwildstar

> Incluído código para nomea a thread de validação em modo de depuração

r513 2020-07-08 06:16:48 derekwildstar

> Melhoria na forma de criação de algumas interfaces

r512 2020-07-08 05:12:29 derekwildstar

> ANYSIZE_ARRAY foi mantido apenas no IFDED correto

r511 2020-06-30 04:40:57 derekwildstar

> Ajustes para adequação ao Delphi XE5
> Lista de ignorância atualizada

r510 2020-06-30 03:44:14 derekwildstar

> Pacotes para todos os Delphis criados
> Considerando o Delphi Sydney

r509 2020-05-06 02:01:33 derekwildstar

> Adição de um exemplo de assinatura digital de XML usando CAPI. Ainda não foi testado e foi herdado do ACBr

r508 2020-04-25 08:51:31 derekwildstar

> Gerados pacotes para todos os Delphis
> Nova unit adicionada para ser a unit proxy do WinInet
> Novas funções para listar e excluir cookies
> O Secure Protocols Tester foi ajustado para compilar no novo Krakatoa

r507 2020-04-06 02:42:42 derekwildstar

> Lista de ignorância atualizada

r506 2020-03-03 05:37:54 derekwildstar

> Lista de componentes do form da janela de edição do Delphi Rio

r505 2020-03-03 05:31:44 derekwildstar

> A forma de aplicação do Hook em KX.Notifiers foi alterada. Agora, ambas as versões desse fonte apenas aplicam o hook no evento OnWindowShow. Foi identificado que no Delphi 2006 o evento OnWindowShow não era executado quando a janela de edição era fechada. Em versões mais recentes do Delphi este evento é executado com o parâmetro AShow = False (indicando fechamento da janela), porém isso não acontece com Delphis antigos e eu optei por manter a mesma solução em qualquer versão, que é desviar o manipulador do evento OnClose da janela de edição. Dessa forma eu garanto que quando a janela for fechada o Hook será desativado
> Incluídas em KX.Main diretivas para ocultar avisos
> Implementado o desvio de OnClose em TEditWindowFormPopUpMenuHook
> Incluído mais um membro em TEditWindowFormComponents para representar o ModuleMenu
> Código de GetActiveTabCaption bifurcado para ser utilizado em qualquer Delphi

r504 2020-03-02 23:30:54 derekwildstar

> Esta revisão possui erros propositais, não a baixe!
> Lista de componentes do form da janela de edição do Delphi 2006 adicionada.
> Alterado o manipulador do evento OnAddMenu contido em KX.Notifiers.pas (da pasta D12-) para realizar uma busca parcial pelo nome do item de menu (isso deve ser feito na versão para Delphis novos)
> Alterada uma das funções FindMenuItem para que ela seja opcionalmente capaz de encontrar um item de menu usando como critério a parte inicial de seu nome.
> Alterada a função GetEditWindowFormComponents para que ela busque por componentes e não mais use índices fixos, evitando assim Access Violations

r503 2020-02-29 06:44:08 derekwildstar

> Criação de pacotes para todos os Delphis
> Início da adequação ao Delphi 2006 (KRKExperts compila e instala, mas levanta exceções por conta de incompatibilidades não previstas)

Show on old repository browser