Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
key-transparency-auditor — Recupera continuamente e verifica crittograficamente gli aggiornamenti del registro di trasparenza delle chiavi, mantiene una vista condensata del prefisso e dell'albero del registro e restituisce le testate dell'albero firmate quando gli aggiornamenti sono validi. | Kitploit
Strumenti/GitHubGitHub/signalapp/key-transparency-auditor
Strumenti DifensiviCrittografiaAnalisi dei Log
GitHubsignalapp/key-transparency-auditor

key-transparency-auditor

Recupera continuamente e verifica crittograficamente gli aggiornamenti del registro di trasparenza delle chiavi, mantiene una vista condensata del prefisso e dell'albero del registro e restituisce le testate dell'albero firmate quando gli aggiornamenti sono validi.

Vedi Repository

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
85452 mesi faNon ancora revisionato
Condividi
key-transparency-auditor
========================

Un'implementazione di riferimento di un auditor di terze parti per il servizio di key transparency di Signal, basata sulla specifica [key transparency](https://bren2010.github.io/draft-key-transparency/draft-mcmillion-key-transparency.html).

Panoramica
--------

Questo servizio è scritto in Java utilizzando il framework [Micronaut](https://docs.micronaut.io/4.4.10/guide/). Per compilare ed eseguire i test unitari, eseguire

```shell
./mvnw clean test
```
nella directory principale.

La classe principale è [`Auditor`](https://github.com/signalapp/key-transparency-auditor/blob/main/src/main/java/org/signal/keytransparency/audit/Auditor.java), che esegue un job programmato che richiede uno stream di aggiornamenti dal servizio di key transparency. Mantiene una vista condensata del [prefix tree](https://bren2010.github.io/draft-key-transparency/draft-mcmillion-key-transparency.html#name-prefix-tree) e del [log tree](https://bren2010.github.io/draft-key-transparency/draft-mcmillion-key-transparency.html#name-log-tree), memorizzando informazioni sufficienti per verificare e accettare ogni aggiornamento in sequenza. Se l'auditor ha elaborato un certo numero di aggiornamenti o è trascorso un certo periodo di tempo, l'auditor invia una [signed tree head](https://bren2010.github.io/draft-key-transparency/draft-mcmillion-key-transparency.html#name-tree-head-signature) al servizio di key transparency, indicando che la sua visione dei prefix e log tree fino all'aggiornamento indicato corrisponde. Se la chiamata remota ha successo, l'auditor scrive i propri dati di stato in un [`AuditorStateRepository`](https://github.com/signalapp/key-transparency-auditor/blob/main/src/main/java/org/signal/keytransparency/audit/storage/AuditorStateRepository.java), che può utilizzare per riprendere dalla posizione più recente nel log di key transparency se l'auditor viene riavviato.

Se l'auditor rileva un'incoerenza nella verifica di un aggiornamento, lancia un'`InvalidProofException` e smette di inviare signed tree head al servizio di key transparency.

Configurazione
-------------

Il servizio necessita dei bean `Auditor`, `KeyTransparencyServiceClient` e `AuditorStateRepository` per essere eseguito. La tabella seguente descrive le [proprietà](https://docs.micronaut.io/latest/guide/#configurationProperties) di [configurazione](https://docs.micronaut.io/latest/guide/#valueAnnotation) necessarie per istanziare questi bean.


| Property                                              | Required?                                      | Description                                                                                                                                                                                                                                                                                 |
|-------------------------------------------------------|------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `auditor.private-key`                                 | sì                                             | Una chiave privata Ed25519 in formato PKCS#8 codificata in base64 standard e utilizzata per firmare la tree head inviata al servizio di key transparency. Può essere generata tramite `openssl genpkey -algorithm ed25519` e rimuovendo l'intestazione e il piè di pagina PEM.               |
| `auditor.public-key`                                  | sì                                             | Una chiave pubblica Ed25519 in formato X509 codificata in base64 standard che è la controparte di `auditor.private-key`.                                                                                                                                                                    |
| `auditor.key-transparency-service-signing-public-key` | sì                                             | Una chiave pubblica Ed25519 in formato PKCS#8 codificata in base64 standard e utilizzata dai client per verificare la firma del servizio di key transparency sulla tree head.                                                                                                                |
| `auditor.key-transparency-service-vrf-public-key`     | sì                                             | Una chiave pubblica Ed25519 in formato PKCS#8 codificata in base64 standard e utilizzata dai client per verificare che l'input di una [Verifiable Random Function](https://www.rfc-editor.org/rfc/rfc9381.html) (chiave di ricerca richiesta) corrisponda all'output (indice di impegno utilizzato per attraversare il prefix tree). |
| `auditor.client-certificate`                          | sì                                             | Un certificato in formato PKCS#8 codificato PEM utilizzato per dimostrare l'identità del client durante la mutual TLS.                                                                                                                                                                      |
| `auditor.client-private-key`                          | sì                                             | Una chiave privata codificata PEM in formato PKCS#8 utilizzata per verificare la proprietà del certificato client durante la mutual TLS.                                                                                                                                                    |
| `auditor.batch-size`                                  | sì                                             | Il numero massimo di aggiornamenti che il servizio di key transparency deve restituire in una singola risposta. Questo valore deve essere minore o uguale a 1000.                                                                                                                           |
| `auditor.interval`                                    | no                                             | L'intervallo di tempo con cui il job dell'auditor deve essere eseguito per elaborare gli aggiornamenti di key transparency. Il valore predefinito è 1 minuto.                                                                                                                              |
| `auditor.signature.interval`                          | no                                             | L'intervallo con cui l'auditor deve inviare una signed tree head al servizio di key transparency, in termini di durata. Il valore predefinito è 1 ora.                                                                                                                                      |
| `auditor.signature.page-size`                         | no                                             | L'intervallo con cui l'auditor deve inviare una signed tree head al servizio di key transparency, in numero di aggiornamenti. Il valore predefinito è 1.000.000.                                                                                                                           |
| `auditor.key-transparency-host`                       | sì                                             | Il nome host del servizio di key transparency.                                                                                                                                                                                                                                              |
| `auditor.key-transparency-port`                       | sì                                             | La porta a cui connettersi per il servizio di key transparency.                                                                                                                                                                                                                             |
| `storage.dynamodb.region`                             | È necessario specificare esattamente uno `storage.<type>` | La regione AWS della tabella DynamoDB utilizzata per memorizzare lo stato dell'auditor.                                                                                                                                                                                                    |
| `storage.dynamodb.table-name`                         | È necessario specificare esattamente uno `storage.<type>` | Il nome della tabella DynamoDB utilizzata per memorizzare lo stato dell'auditor.                                                                                                                                                                                                           |
| `storage.file.name`                                   | È necessario specificare esattamente uno `storage.<type>` | Il nome del file utilizzato per memorizzare lo stato dell'auditor.                                                                                                                                                                                                                         |

Segnalazione di bug
------------------------

Utilizziamo [GitHub][github issues] per il tracciamento dei bug. I problemi di sicurezza devono essere inviati a <a href="mailto:[email protected]">[email protected]</a>.

Aiuto
----

Non possiamo fornire supporto tecnico diretto. Ottieni aiuto per eseguire questo software nel tuo ambiente nel nostro [forum della community non ufficiale][community forum].

Licenza
-------

Copyright 2025 Signal Messenger, LLC

Licenziato sotto AGPLv3: https://www.gnu.org/licenses/agpl-3.0.html


[github issues]: https://github.com/signalapp/key-transparency-auditor/issues
[community forum]: https://community.signalusers.org
Scarica lo strumento