config.proto 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. syntax = "proto3";
  2. package v2ray.core.transport.internet.tls;
  3. option csharp_namespace = "V2Ray.Core.Transport.Internet.Tls";
  4. option go_package = "github.com/v2fly/v2ray-core/v4/transport/internet/tls";
  5. option java_package = "com.v2ray.core.transport.internet.tls";
  6. option java_multiple_files = true;
  7. message Certificate {
  8. // TLS certificate in x509 format.
  9. bytes Certificate = 1;
  10. // TLS key in x509 format.
  11. bytes Key = 2;
  12. enum Usage {
  13. ENCIPHERMENT = 0;
  14. AUTHORITY_VERIFY = 1;
  15. AUTHORITY_ISSUE = 2;
  16. }
  17. Usage usage = 3;
  18. }
  19. message Config {
  20. // Whether or not to allow self-signed certificates.
  21. bool allow_insecure = 1;
  22. // List of certificates to be served on server.
  23. repeated Certificate certificate = 2;
  24. // Override server name.
  25. string server_name = 3;
  26. // Lists of string as ALPN values.
  27. repeated string next_protocol = 4;
  28. // Whether or not to enable session (ticket) resumption.
  29. bool enable_session_resumption = 5;
  30. // If true, root certificates on the system will not be loaded for
  31. // verification.
  32. bool disable_system_root = 6;
  33. /* @Document A pinned certificate chain sha256 hash.
  34. @Document If the server's hash does not match this value, the connection will be aborted.
  35. @Document This value replace allow_insecure.
  36. @Critical
  37. */
  38. repeated bytes pinned_peer_certificate_chain_sha256 = 7;
  39. // Whether or not server verify client cert
  40. bool client_verify = 8;
  41. }