Docserver: Skip to version 3-45-2. There was a test instance already uploaded
[chromium-blink-merge.git] / crypto / ec_signature_creator_impl.h
blobf2ef9d65795eab2136a474f9759375ebe61aef0a
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CRYPTO_EC_SIGNATURE_CREATOR_IMPL_H_
6 #define CRYPTO_EC_SIGNATURE_CREATOR_IMPL_H_
8 #include "base/compiler_specific.h"
9 #include "crypto/ec_signature_creator.h"
11 namespace crypto {
13 class ECSignatureCreatorImpl : public ECSignatureCreator {
14 public:
15 explicit ECSignatureCreatorImpl(ECPrivateKey* key);
16 virtual ~ECSignatureCreatorImpl();
18 virtual bool Sign(const uint8* data,
19 int data_len,
20 std::vector<uint8>* signature) override;
22 virtual bool DecodeSignature(const std::vector<uint8>& der_sig,
23 std::vector<uint8>* out_raw_sig) override;
25 private:
26 ECPrivateKey* key_;
27 size_t signature_len_;
29 DISALLOW_COPY_AND_ASSIGN(ECSignatureCreatorImpl);
32 } // namespace crypto
34 #endif // CRYPTO_EC_SIGNATURE_CREATOR_IMPL_H_