// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

package bcrypter

import "v.io/v23/security"

error (
      Internal(err error) {
              "en": "internal error: {err}",
      }
      NoParams(pattern security.BlessingPattern) {
              "en": "no public parameters available for encrypting for pattern: {pattern}",
      }
      PrivateKeyNotFound() {
              "en": "no private key found for decrypting ciphertext",
      }
      InvalidPrivateKey(err error) {
              "en": "private key is invalid: {err}",
      }
)
