INNER CODE UNIT · Go
signFile
andrearaponi/dito · cmd/plugin-signer/main.go:50
func signFile(filename string) error {
data, err := os.ReadFile(filename)
if err != nil {
return fmt.Errorf("failed to read file: %w", err)
}
hash := sha256.Sum256(data)
privateKey, err := os.ReadFile("ed25519_private.key")
if err != nil {
return fmt.Errorf("failed to read private key: %w", err)
}
signature := ed25519.Sign(privateKey, hash[:])
if err := os.WriteFile(filename+".sig", []byte(hex.EncodeToString(signature)), 0644); err != nil {
return fmt.Errorf("failed to save signature: %w", err)
}
fmt.Println("File signed successfully:", filename+".sig")