Properties

$topClient

$topClient : 

Type

$randomNum

$randomNum : 

Type

$securityUtil

$securityUtil : 

Type

$cacheClient

$cacheClient : 

Type

Methods

__construct()

__construct(  $client,   $random) 

Parameters

$client
$random

setCacheClient()

setCacheClient(  $cache) 

设置缓存处理器

Parameters

$cache

searchPrevious()

searchPrevious(  $data,   $type,   $session = null) : 

密文检索,在秘钥升级场景下兼容查询

Parameters

$data
$type
$session

Returns

search()

search(  $data,   $type,   $session = null) : 

密文检索(每个用户单独分配秘钥)

Parameters

$data
$type
$session

Returns

searchInner()

searchInner(  $data,   $type,   $session,   $version) : 

密文检索。 手机号码格式:$base64(H-MAC(phone后4位))$ simple格式:base64(H-MAC(滑窗))

Parameters

$data
$type
$session
$version

Returns

decryptPublic()

decryptPublic(  $data,   $type) 

单条数据解密,使用appkey级别公钥 非加密数据直接返回原文

Parameters

$data
$type

decrypt()

decrypt(  $data,   $type,   $session) 

单条数据解密 非加密数据直接返回原文

Parameters

$data
$type
$session

decryptBatchPublic()

decryptBatchPublic(  $array,   $type) 

多条数据解密,使用appkey级别公钥 非加密数据直接返回原文

Parameters

$array
$type

decryptBatch()

decryptBatch(  $array,   $type,   $session) 

多条数据解密,必须是同一个type和用户,返回结果是 KV结果 非加密数据直接返回原文

Parameters

$array
$type
$session

decryptPreviousPublic()

decryptPreviousPublic(  $data,   $type) 

使用上一版本秘钥解密,app级别公钥

Parameters

$data
$type

decryptPrevious()

decryptPrevious(  $data,   $type,   $session) 

使用上一版本秘钥解密,一般只用于更新秘钥

Parameters

$data
$type
$session

encryptPublic()

encryptPublic(  $data,   $type,   $version = null) 

加密单条数据,使用app级别公钥

Parameters

$data
$type
$version

encrypt()

encrypt(  $data,   $type,   $session = null,   $version = null) 

加密单条数据

Parameters

$data
$type
$session
$version

encryptBatchPublic()

encryptBatchPublic(  $array,   $type,   $version = null) 

加密多条数据,使用app级别公钥

Parameters

$array
$type
$version

encryptBatch()

encryptBatch(  $array,   $type,   $session,   $version = null) 

加密多条数据,必须是同一个type和用户,返回结果是 KV结果

Parameters

$array
$type
$session
$version

encryptPreviousPublic()

encryptPreviousPublic(  $data,   $type) 

使用上一版本秘钥加密,使用app级别公钥

Parameters

$data
$type

encryptPrevious()

encryptPrevious(  $data,   $type,   $session) 

使用上一版本秘钥加密,一般只用于更新秘钥

Parameters

$data
$type
$session

initSecret()

initSecret(  $session) 

根据session生成秘钥

Parameters

$session

buildCacheKey()

buildCacheKey(  $session,   $secretVersion) 

Parameters

$session
$secretVersion

generateCustomerSession()

generateCustomerSession(  $userId) 

Parameters

$userId

isEncryptData()

isEncryptData(  $data,   $type) 

判断是否是已加密的数据

Parameters

$data
$type

isEncryptDataArray()

isEncryptDataArray(  $array,   $type) 

判断是否是已加密的数据,数据必须是同一个类型

Parameters

$array
$type

isPartEncryptData()

isPartEncryptData(  $array,   $type) 

判断数组中的数据是否存在密文,存在任何一个返回true,否则false

Parameters

$array
$type

callSecretApiWithCache()

callSecretApiWithCache(  $session,   $secretVersion) 

获取秘钥,使用缓存

Parameters

$session
$secretVersion

incrCounter()

incrCounter(  $op,   $type,   $secretContext,   $flush) 

Parameters

$op
$type
$secretContext
$flush

flushCounter()

flushCounter(  $secretContext) 

Parameters

$secretContext

clearReport()

clearReport(  $secretContext) 

Parameters

$secretContext

canUpload()

canUpload(  $secretContext) 

Parameters

$secretContext

report()

report(  $secretContext) 

Parameters

$secretContext

callSecretApi()

callSecretApi(  $session,   $secretVersion) 

获取秘钥,不使用缓存

Parameters

$session
$secretVersion