mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 05:18:25 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			28 lines
		
	
	
		
			584 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			584 B
		
	
	
	
		
			Go
		
	
	
	
	
	
// Copyright 2021 The Gitea Authors. All rights reserved.
 | 
						|
// Use of this source code is governed by a MIT-style
 | 
						|
// license that can be found in the LICENSE file.
 | 
						|
 | 
						|
package secrets
 | 
						|
 | 
						|
import (
 | 
						|
	"fmt"
 | 
						|
)
 | 
						|
 | 
						|
// ErrMasterKeySealed is returned when trying to use master key that is sealed
 | 
						|
var ErrMasterKeySealed = fmt.Errorf("master key sealed")
 | 
						|
 | 
						|
// MasterKeyProvider provides master key used for encryption
 | 
						|
type MasterKeyProvider interface {
 | 
						|
	Init() error
 | 
						|
 | 
						|
	GenerateMasterKey() ([][]byte, error)
 | 
						|
 | 
						|
	Unseal(secret []byte) error
 | 
						|
 | 
						|
	Seal() error
 | 
						|
 | 
						|
	IsSealed() bool
 | 
						|
 | 
						|
	GetMasterKey() ([]byte, error)
 | 
						|
}
 |