1bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Copyright 2013 The Chromium Authors. All rights reserved. 2bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// found in the LICENSE file. 4bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 5bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#ifndef NET_CERT_JWK_SERIALIZER_H_ 6bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#define NET_CERT_JWK_SERIALIZER_H_ 7bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 8bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#include "base/strings/string_piece.h" 9bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#include "net/base/net_export.h" 10bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 11bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdochnamespace base { 12bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdochclass DictionaryValue; 13bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch} 14bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 15bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdochnamespace net { 16bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 17bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdochnamespace JwkSerializer { 18bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 19bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Converts a subject public key info from DER to JWK. 20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// See http://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-17 for 21bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// the output format. 22bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben MurdochNET_EXPORT_PRIVATE bool ConvertSpkiFromDerToJwk( 23bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch const base::StringPiece& spki_der, 24bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch base::DictionaryValue* public_key_jwk); 25bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 26bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch} // namespace JwkSerializer 27bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 28bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch} // namespace net 29bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 30bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#endif // NET_CERT_JWK_SERIALIZER_H_ 31