gooderp18绿色标准版
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

218 lines
5.6KB

  1. /* contrib/pgcrypto/pgcrypto--1.3.sql */
  2. -- complain if script is sourced in psql, rather than via CREATE EXTENSION
  3. \echo Use "CREATE EXTENSION pgcrypto" to load this file. \quit
  4. CREATE FUNCTION digest(text, text)
  5. RETURNS bytea
  6. AS 'MODULE_PATHNAME', 'pg_digest'
  7. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  8. CREATE FUNCTION digest(bytea, text)
  9. RETURNS bytea
  10. AS 'MODULE_PATHNAME', 'pg_digest'
  11. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  12. CREATE FUNCTION hmac(text, text, text)
  13. RETURNS bytea
  14. AS 'MODULE_PATHNAME', 'pg_hmac'
  15. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  16. CREATE FUNCTION hmac(bytea, bytea, text)
  17. RETURNS bytea
  18. AS 'MODULE_PATHNAME', 'pg_hmac'
  19. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  20. CREATE FUNCTION crypt(text, text)
  21. RETURNS text
  22. AS 'MODULE_PATHNAME', 'pg_crypt'
  23. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  24. CREATE FUNCTION gen_salt(text)
  25. RETURNS text
  26. AS 'MODULE_PATHNAME', 'pg_gen_salt'
  27. LANGUAGE C VOLATILE STRICT PARALLEL SAFE;
  28. CREATE FUNCTION gen_salt(text, int4)
  29. RETURNS text
  30. AS 'MODULE_PATHNAME', 'pg_gen_salt_rounds'
  31. LANGUAGE C VOLATILE STRICT PARALLEL SAFE;
  32. CREATE FUNCTION encrypt(bytea, bytea, text)
  33. RETURNS bytea
  34. AS 'MODULE_PATHNAME', 'pg_encrypt'
  35. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  36. CREATE FUNCTION decrypt(bytea, bytea, text)
  37. RETURNS bytea
  38. AS 'MODULE_PATHNAME', 'pg_decrypt'
  39. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  40. CREATE FUNCTION encrypt_iv(bytea, bytea, bytea, text)
  41. RETURNS bytea
  42. AS 'MODULE_PATHNAME', 'pg_encrypt_iv'
  43. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  44. CREATE FUNCTION decrypt_iv(bytea, bytea, bytea, text)
  45. RETURNS bytea
  46. AS 'MODULE_PATHNAME', 'pg_decrypt_iv'
  47. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  48. CREATE FUNCTION gen_random_bytes(int4)
  49. RETURNS bytea
  50. AS 'MODULE_PATHNAME', 'pg_random_bytes'
  51. LANGUAGE C VOLATILE STRICT PARALLEL SAFE;
  52. CREATE FUNCTION gen_random_uuid()
  53. RETURNS uuid
  54. AS 'MODULE_PATHNAME', 'pg_random_uuid'
  55. LANGUAGE C VOLATILE PARALLEL SAFE;
  56. --
  57. -- pgp_sym_encrypt(data, key)
  58. --
  59. CREATE FUNCTION pgp_sym_encrypt(text, text)
  60. RETURNS bytea
  61. AS 'MODULE_PATHNAME', 'pgp_sym_encrypt_text'
  62. LANGUAGE C STRICT PARALLEL SAFE;
  63. CREATE FUNCTION pgp_sym_encrypt_bytea(bytea, text)
  64. RETURNS bytea
  65. AS 'MODULE_PATHNAME', 'pgp_sym_encrypt_bytea'
  66. LANGUAGE C STRICT PARALLEL SAFE;
  67. --
  68. -- pgp_sym_encrypt(data, key, args)
  69. --
  70. CREATE FUNCTION pgp_sym_encrypt(text, text, text)
  71. RETURNS bytea
  72. AS 'MODULE_PATHNAME', 'pgp_sym_encrypt_text'
  73. LANGUAGE C STRICT PARALLEL SAFE;
  74. CREATE FUNCTION pgp_sym_encrypt_bytea(bytea, text, text)
  75. RETURNS bytea
  76. AS 'MODULE_PATHNAME', 'pgp_sym_encrypt_bytea'
  77. LANGUAGE C STRICT PARALLEL SAFE;
  78. --
  79. -- pgp_sym_decrypt(data, key)
  80. --
  81. CREATE FUNCTION pgp_sym_decrypt(bytea, text)
  82. RETURNS text
  83. AS 'MODULE_PATHNAME', 'pgp_sym_decrypt_text'
  84. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  85. CREATE FUNCTION pgp_sym_decrypt_bytea(bytea, text)
  86. RETURNS bytea
  87. AS 'MODULE_PATHNAME', 'pgp_sym_decrypt_bytea'
  88. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  89. --
  90. -- pgp_sym_decrypt(data, key, args)
  91. --
  92. CREATE FUNCTION pgp_sym_decrypt(bytea, text, text)
  93. RETURNS text
  94. AS 'MODULE_PATHNAME', 'pgp_sym_decrypt_text'
  95. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  96. CREATE FUNCTION pgp_sym_decrypt_bytea(bytea, text, text)
  97. RETURNS bytea
  98. AS 'MODULE_PATHNAME', 'pgp_sym_decrypt_bytea'
  99. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  100. --
  101. -- pgp_pub_encrypt(data, key)
  102. --
  103. CREATE FUNCTION pgp_pub_encrypt(text, bytea)
  104. RETURNS bytea
  105. AS 'MODULE_PATHNAME', 'pgp_pub_encrypt_text'
  106. LANGUAGE C STRICT PARALLEL SAFE;
  107. CREATE FUNCTION pgp_pub_encrypt_bytea(bytea, bytea)
  108. RETURNS bytea
  109. AS 'MODULE_PATHNAME', 'pgp_pub_encrypt_bytea'
  110. LANGUAGE C STRICT PARALLEL SAFE;
  111. --
  112. -- pgp_pub_encrypt(data, key, args)
  113. --
  114. CREATE FUNCTION pgp_pub_encrypt(text, bytea, text)
  115. RETURNS bytea
  116. AS 'MODULE_PATHNAME', 'pgp_pub_encrypt_text'
  117. LANGUAGE C STRICT PARALLEL SAFE;
  118. CREATE FUNCTION pgp_pub_encrypt_bytea(bytea, bytea, text)
  119. RETURNS bytea
  120. AS 'MODULE_PATHNAME', 'pgp_pub_encrypt_bytea'
  121. LANGUAGE C STRICT PARALLEL SAFE;
  122. --
  123. -- pgp_pub_decrypt(data, key)
  124. --
  125. CREATE FUNCTION pgp_pub_decrypt(bytea, bytea)
  126. RETURNS text
  127. AS 'MODULE_PATHNAME', 'pgp_pub_decrypt_text'
  128. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  129. CREATE FUNCTION pgp_pub_decrypt_bytea(bytea, bytea)
  130. RETURNS bytea
  131. AS 'MODULE_PATHNAME', 'pgp_pub_decrypt_bytea'
  132. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  133. --
  134. -- pgp_pub_decrypt(data, key, psw)
  135. --
  136. CREATE FUNCTION pgp_pub_decrypt(bytea, bytea, text)
  137. RETURNS text
  138. AS 'MODULE_PATHNAME', 'pgp_pub_decrypt_text'
  139. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  140. CREATE FUNCTION pgp_pub_decrypt_bytea(bytea, bytea, text)
  141. RETURNS bytea
  142. AS 'MODULE_PATHNAME', 'pgp_pub_decrypt_bytea'
  143. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  144. --
  145. -- pgp_pub_decrypt(data, key, psw, arg)
  146. --
  147. CREATE FUNCTION pgp_pub_decrypt(bytea, bytea, text, text)
  148. RETURNS text
  149. AS 'MODULE_PATHNAME', 'pgp_pub_decrypt_text'
  150. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  151. CREATE FUNCTION pgp_pub_decrypt_bytea(bytea, bytea, text, text)
  152. RETURNS bytea
  153. AS 'MODULE_PATHNAME', 'pgp_pub_decrypt_bytea'
  154. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  155. --
  156. -- PGP key ID
  157. --
  158. CREATE FUNCTION pgp_key_id(bytea)
  159. RETURNS text
  160. AS 'MODULE_PATHNAME', 'pgp_key_id_w'
  161. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  162. --
  163. -- pgp armor
  164. --
  165. CREATE FUNCTION armor(bytea)
  166. RETURNS text
  167. AS 'MODULE_PATHNAME', 'pg_armor'
  168. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  169. CREATE FUNCTION armor(bytea, text[], text[])
  170. RETURNS text
  171. AS 'MODULE_PATHNAME', 'pg_armor'
  172. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  173. CREATE FUNCTION dearmor(text)
  174. RETURNS bytea
  175. AS 'MODULE_PATHNAME', 'pg_dearmor'
  176. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
  177. CREATE FUNCTION pgp_armor_headers(text, key OUT text, value OUT text)
  178. RETURNS SETOF record
  179. AS 'MODULE_PATHNAME', 'pgp_armor_headers'
  180. LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
上海开阖软件有限公司 沪ICP备12045867号-1