This is an automated email from the ASF dual-hosted git repository.
zhangstar333 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 08a3e56c2c3 [Fix](function) Refine crypto functions signature to fix
wrong result (#40285)
08a3e56c2c3 is described below
commit 08a3e56c2c3cc1b3aea1c5c309bb3dd33c3a490f
Author: zclllhhjj <[email protected]>
AuthorDate: Wed Sep 4 12:50:44 2024 +0800
[Fix](function) Refine crypto functions signature to fix wrong result
(#40285)
## Proposed changes
Issue Number: close #xxx
1. remove all `aes/sm4_{encrypt/decrypt}_v2` functions signatures.
2. before for 2 args, always use `XXX_128_ECB`, now fixed it. we will
use `block_encryption_mode` when 2/3 args are given.
2.1. before this, we wrongly used `AES_128_ECB` for SM4_ENCRYPT
4. for `AES_ENCRYPT` with 2 args, we wrongly use `'AES_128_ECB'` as its
default initial string. now fixed it.
docs: https://github.com/apache/doris-website/pull/1083
---
.../apache/doris/analysis/FunctionCallExpr.java | 87 +++-------------------
.../doris/catalog/BuiltinScalarFunctions.java | 8 --
.../expressions/functions/scalar/AesDecrypt.java | 14 +---
.../expressions/functions/scalar/AesDecryptV2.java | 74 ------------------
.../expressions/functions/scalar/AesEncrypt.java | 14 +---
.../expressions/functions/scalar/AesEncryptV2.java | 74 ------------------
.../expressions/functions/scalar/Sm4Decrypt.java | 15 +---
.../expressions/functions/scalar/Sm4DecryptV2.java | 69 -----------------
.../expressions/functions/scalar/Sm4Encrypt.java | 15 +---
.../expressions/functions/scalar/Sm4EncryptV2.java | 72 ------------------
.../expressions/visitor/ScalarFunctionVisitor.java | 20 -----
.../encryption_digest/test_encryption_function.out | 80 +-------------------
.../encryption_digest/test_encryption_function.out | 64 +---------------
.../nereids_function_p0/scalar_function/S.groovy | 51 +------------
.../test_encryption_function.groovy | 73 +-----------------
.../test_encryption_function.groovy | 62 +--------------
16 files changed, 29 insertions(+), 763 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
b/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
index 4041fa4873b..a1d89e12ec4 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
@@ -645,11 +645,7 @@ public class FunctionCallExpr extends Expr {
&& (fnName.getFunction().equalsIgnoreCase("aes_decrypt")
||
fnName.getFunction().equalsIgnoreCase("aes_encrypt")
||
fnName.getFunction().equalsIgnoreCase("sm4_decrypt")
- ||
fnName.getFunction().equalsIgnoreCase("sm4_encrypt")
- ||
fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")
- ||
fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")
- ||
fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")
- ||
fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2"))) {
+ ||
fnName.getFunction().equalsIgnoreCase("sm4_encrypt"))) {
sb.append("\'***\'");
} else if (orderByElements.size() > 0 && i == len -
orderByElements.size()) {
sb.append("ORDER BY ");
@@ -734,22 +730,13 @@ public class FunctionCallExpr extends Expr {
if (fnName.getFunction().equalsIgnoreCase("aes_decrypt")
|| fnName.getFunction().equalsIgnoreCase("aes_encrypt")
|| fnName.getFunction().equalsIgnoreCase("sm4_decrypt")
- || fnName.getFunction().equalsIgnoreCase("sm4_encrypt")
- || fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2")) {
+ || fnName.getFunction().equalsIgnoreCase("sm4_encrypt")) {
len = len - 1;
}
for (int i = 0; i < len; ++i) {
if (i == 1 && (fnName.getFunction().equalsIgnoreCase("aes_decrypt")
|| fnName.getFunction().equalsIgnoreCase("aes_encrypt")
- || fnName.getFunction().equalsIgnoreCase("sm4_decrypt")
- || fnName.getFunction().equalsIgnoreCase("sm4_encrypt")
- || fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")
- ||
fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2"))) {
+ || fnName.getFunction().equalsIgnoreCase("sm4_decrypt"))) {
result.add("\'***\'");
} else {
result.add(children.get(i).toDigest());
@@ -1152,13 +1139,8 @@ public class FunctionCallExpr extends Expr {
if ((fnName.getFunction().equalsIgnoreCase("aes_decrypt")
|| fnName.getFunction().equalsIgnoreCase("aes_encrypt")
|| fnName.getFunction().equalsIgnoreCase("sm4_decrypt")
- || fnName.getFunction().equalsIgnoreCase("sm4_encrypt")
- || fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")
- || fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2"))
+ || fnName.getFunction().equalsIgnoreCase("sm4_encrypt"))
&& (children.size() == 2 || children.size() == 3)) {
- String blockEncryptionMode = "";
Set<String> aesModes = new HashSet<>(Arrays.asList(
"AES_128_ECB",
"AES_192_ECB",
@@ -1192,43 +1174,20 @@ public class FunctionCallExpr extends Expr {
"SM4_128_OFB",
"SM4_128_CTR"));
+ String blockEncryptionMode = "";
if (ConnectContext.get() != null) {
blockEncryptionMode =
ConnectContext.get().getSessionVariable().getBlockEncryptionMode();
if (fnName.getFunction().equalsIgnoreCase("aes_decrypt")
- || fnName.getFunction().equalsIgnoreCase("aes_encrypt")
- ||
fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")
- ||
fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")) {
+ ||
fnName.getFunction().equalsIgnoreCase("aes_encrypt")) {
if (StringUtils.isAllBlank(blockEncryptionMode)) {
blockEncryptionMode = "AES_128_ECB";
}
if (!aesModes.contains(blockEncryptionMode.toUpperCase()))
{
throw new AnalysisException("session variable
block_encryption_mode is invalid with aes");
}
- if (children.size() == 2) {
- boolean isECB =
blockEncryptionMode.equalsIgnoreCase("AES_128_ECB")
- ||
blockEncryptionMode.equalsIgnoreCase("AES_192_ECB")
- ||
blockEncryptionMode.equalsIgnoreCase("AES_256_ECB");
- if
(fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")) {
- if (!isECB) {
- throw new AnalysisException(
- "Incorrect parameter count in the call
to native function 'aes_decrypt'");
- }
- } else if
(fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")) {
- if (!isECB) {
- throw new AnalysisException(
- "Incorrect parameter count in the call
to native function 'aes_encrypt'");
- }
- } else {
- // if there are only 2 params, we need set
encryption mode to AES_128_ECB
- // this keeps the behavior consistent with old
doris ver.
- blockEncryptionMode = "AES_128_ECB";
- }
- }
}
if (fnName.getFunction().equalsIgnoreCase("sm4_decrypt")
- || fnName.getFunction().equalsIgnoreCase("sm4_encrypt")
- ||
fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")
- ||
fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2")) {
+ ||
fnName.getFunction().equalsIgnoreCase("sm4_encrypt")) {
if (StringUtils.isAllBlank(blockEncryptionMode)) {
blockEncryptionMode = "SM4_128_ECB";
}
@@ -1236,36 +1195,12 @@ public class FunctionCallExpr extends Expr {
throw new AnalysisException(
"session variable block_encryption_mode is
invalid with sm4");
}
- if (children.size() == 2) {
- if
(fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")) {
- throw new AnalysisException(
- "Incorrect parameter count in the call to
native function 'sm4_decrypt'");
- } else if
(fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2")) {
- throw new AnalysisException(
- "Incorrect parameter count in the call to
native function 'sm4_encrypt'");
- } else {
- // if there are only 2 params, we need add an
empty string as the third param
- // and set encryption mode to SM4_128_ECB
- // this keeps the behavior consistent with old
doris ver.
- children.add(new StringLiteral(""));
- blockEncryptionMode = "SM4_128_ECB";
- }
- }
}
+ } else {
+ throw new AnalysisException("cannot get session variable
`block_encryption_mode`, "
+ + "please explicitly specify by using 4-args
function");
}
- if (!blockEncryptionMode.equals(children.get(children.size() -
1).toString())) {
- children.add(new StringLiteral(blockEncryptionMode));
- }
-
- if (fnName.getFunction().equalsIgnoreCase("aes_decrypt_v2")) {
- fnName = FunctionName.createBuiltinName("aes_decrypt");
- } else if
(fnName.getFunction().equalsIgnoreCase("aes_encrypt_v2")) {
- fnName = FunctionName.createBuiltinName("aes_encrypt");
- } else if
(fnName.getFunction().equalsIgnoreCase("sm4_decrypt_v2")) {
- fnName = FunctionName.createBuiltinName("sm4_decrypt");
- } else if
(fnName.getFunction().equalsIgnoreCase("sm4_encrypt_v2")) {
- fnName = FunctionName.createBuiltinName("sm4_encrypt");
- }
+ children.add(new StringLiteral(blockEncryptionMode));
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
b/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
index 383a8bbc4fe..bcb0864b64f 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
@@ -22,9 +22,7 @@ import org.apache.doris.nereids.trees.expressions.Regexp;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Abs;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Acos;
import org.apache.doris.nereids.trees.expressions.functions.scalar.AesDecrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.AesDecryptV2;
import org.apache.doris.nereids.trees.expressions.functions.scalar.AesEncrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.AesEncryptV2;
import
org.apache.doris.nereids.trees.expressions.functions.scalar.AppendTrailingCharIfAbsent;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Array;
import org.apache.doris.nereids.trees.expressions.functions.scalar.ArrayApply;
@@ -370,9 +368,7 @@ import
org.apache.doris.nereids.trees.expressions.functions.scalar.Sleep;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm3;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm3sum;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4Decrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4DecryptV2;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4Encrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4EncryptV2;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Space;
import org.apache.doris.nereids.trees.expressions.functions.scalar.SplitByChar;
import
org.apache.doris.nereids.trees.expressions.functions.scalar.SplitByRegexp;
@@ -479,9 +475,7 @@ public class BuiltinScalarFunctions implements
FunctionHelper {
scalar(Abs.class, "abs"),
scalar(Acos.class, "acos"),
scalar(AesDecrypt.class, "aes_decrypt"),
- scalar(AesDecryptV2.class, "aes_decrypt_v2"),
scalar(AesEncrypt.class, "aes_encrypt"),
- scalar(AesEncryptV2.class, "aes_encrypt_v2"),
scalar(AppendTrailingCharIfAbsent.class,
"append_trailing_char_if_absent"),
scalar(Array.class, "array"),
scalar(ArrayApply.class, "array_apply"),
@@ -849,9 +843,7 @@ public class BuiltinScalarFunctions implements
FunctionHelper {
scalar(Sm3.class, "sm3"),
scalar(Sm3sum.class, "sm3sum"),
scalar(Sm4Decrypt.class, "sm4_decrypt"),
- scalar(Sm4DecryptV2.class, "sm4_decrypt_v2"),
scalar(Sm4Encrypt.class, "sm4_encrypt"),
- scalar(Sm4EncryptV2.class, "sm4_encrypt_v2"),
scalar(Space.class, "space"),
scalar(SplitByChar.class, "split_by_char"),
scalar(SplitByRegexp.class, "split_by_regexp"),
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecrypt.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecrypt.java
index 5e7d760b081..7608cf4e40e 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecrypt.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecrypt.java
@@ -18,7 +18,6 @@
package org.apache.doris.nereids.trees.expressions.functions.scalar;
import org.apache.doris.catalog.FunctionSignature;
-import org.apache.doris.nereids.exceptions.AnalysisException;
import org.apache.doris.nereids.trees.expressions.Expression;
import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
@@ -58,16 +57,7 @@ public class AesDecrypt extends AesCryptoFunction {
* AesDecrypt
*/
public AesDecrypt(Expression arg0, Expression arg1) {
- // if there are only 2 params, we need set encryption mode to
AES_128_ECB
- // this keeps the behavior consistent with old doris ver.
- super("aes_decrypt", arg0, arg1, new StringLiteral("AES_128_ECB"));
-
- // check if encryptionMode from session variables is valid
- StringLiteral encryptionMode =
CryptoFunction.getDefaultBlockEncryptionMode("AES_128_ECB");
- if (!AES_MODES.contains(encryptionMode.getValue())) {
- throw new AnalysisException(
- "session variable block_encryption_mode is invalid with
aes");
- }
+ super("aes_decrypt", arg0, arg1, new StringLiteral(""),
getDefaultBlockEncryptionMode());
}
public AesDecrypt(Expression arg0, Expression arg1, Expression arg2) {
@@ -89,7 +79,7 @@ public class AesDecrypt extends AesCryptoFunction {
} else if (children().size() == 3) {
return new AesDecrypt(children.get(0), children.get(1),
children.get(2));
} else {
- return new AesDecrypt(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
+ return new AesDecrypt(children.get(0), children.get(1),
children.get(2), children.get(3));
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecryptV2.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecryptV2.java
deleted file mode 100644
index 3a5a8121cff..00000000000
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesDecryptV2.java
+++ /dev/null
@@ -1,74 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.nereids.trees.expressions.functions.scalar;
-
-import org.apache.doris.nereids.exceptions.AnalysisException;
-import org.apache.doris.nereids.trees.expressions.Expression;
-import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
-import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
-
-import com.google.common.base.Preconditions;
-
-import java.util.List;
-
-/**
- * ScalarFunction 'aes_decrypt'. This class is generated by GenerateFunction.
- */
-public class AesDecryptV2 extends AesDecrypt {
-
- /**
- * AesDecryptV2
- */
- public AesDecryptV2(Expression arg0, Expression arg1) {
- super(arg0, arg1, getDefaultBlockEncryptionMode());
- String blockEncryptionMode =
String.valueOf(getDefaultBlockEncryptionMode());
- if (!blockEncryptionMode.toUpperCase().equals("'AES_128_ECB'")
- && !blockEncryptionMode.toUpperCase().equals("'AES_192_ECB'")
- && !blockEncryptionMode.toUpperCase().equals("'AES_256_ECB'"))
{
- throw new AnalysisException("Incorrect parameter count in the call
to native function 'aes_decrypt'");
- }
- }
-
- public AesDecryptV2(Expression arg0, Expression arg1, Expression arg2) {
- super(arg0, arg1, arg2);
- }
-
- public AesDecryptV2(Expression arg0, Expression arg1, Expression arg2,
Expression arg3) {
- super(arg0, arg1, arg2, arg3);
- }
-
- /**
- * withChildren.
- */
- @Override
- public AesDecryptV2 withChildren(List<Expression> children) {
- Preconditions.checkArgument(children.size() >= 2 && children.size() <=
4);
- if (children.size() == 2) {
- return new AesDecryptV2(children.get(0), children.get(1));
- } else if (children().size() == 3) {
- return new AesDecryptV2(children.get(0), children.get(1),
children.get(2));
- } else {
- return new AesDecryptV2(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
- }
- }
-
- @Override
- public <R, C> R accept(ExpressionVisitor<R, C> visitor, C context) {
- return visitor.visitAesDecryptV2(this, context);
- }
-}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncrypt.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncrypt.java
index ef99bdbe21d..455d6b0dbd5 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncrypt.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncrypt.java
@@ -18,7 +18,6 @@
package org.apache.doris.nereids.trees.expressions.functions.scalar;
import org.apache.doris.catalog.FunctionSignature;
-import org.apache.doris.nereids.exceptions.AnalysisException;
import org.apache.doris.nereids.trees.expressions.Expression;
import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
@@ -58,16 +57,7 @@ public class AesEncrypt extends AesCryptoFunction {
* Some javadoc for checkstyle...
*/
public AesEncrypt(Expression arg0, Expression arg1) {
- // if there are only 2 params, we need set encryption mode to
AES_128_ECB
- // this keeps the behavior consistent with old doris ver.
- super("aes_encrypt", arg0, arg1, new StringLiteral("AES_128_ECB"));
-
- // check if encryptionMode from session variables is valid
- StringLiteral encryptionMode =
CryptoFunction.getDefaultBlockEncryptionMode("AES_128_ECB");
- if (!AES_MODES.contains(encryptionMode.getValue())) {
- throw new AnalysisException(
- "session variable block_encryption_mode is invalid with
aes");
- }
+ super("aes_encrypt", arg0, arg1, new StringLiteral(""),
getDefaultBlockEncryptionMode());
}
public AesEncrypt(Expression arg0, Expression arg1, Expression arg2) {
@@ -89,7 +79,7 @@ public class AesEncrypt extends AesCryptoFunction {
} else if (children().size() == 3) {
return new AesEncrypt(children.get(0), children.get(1),
children.get(2));
} else {
- return new AesEncrypt(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
+ return new AesEncrypt(children.get(0), children.get(1),
children.get(2), children.get(3));
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncryptV2.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncryptV2.java
deleted file mode 100644
index 08e1d1e915e..00000000000
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesEncryptV2.java
+++ /dev/null
@@ -1,74 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.nereids.trees.expressions.functions.scalar;
-
-import org.apache.doris.nereids.exceptions.AnalysisException;
-import org.apache.doris.nereids.trees.expressions.Expression;
-import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
-import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
-
-import com.google.common.base.Preconditions;
-
-import java.util.List;
-
-/**
- * ScalarFunction 'aes_encrypt'. This class is generated by GenerateFunction.
- */
-public class AesEncryptV2 extends AesEncrypt {
-
- /**
- * AesEncryptV2
- */
- public AesEncryptV2(Expression arg0, Expression arg1) {
- super(arg0, arg1, getDefaultBlockEncryptionMode());
- String blockEncryptionMode =
String.valueOf(getDefaultBlockEncryptionMode());
- if (!blockEncryptionMode.toUpperCase().equals("'AES_128_ECB'")
- && !blockEncryptionMode.toUpperCase().equals("'AES_192_ECB'")
- && !blockEncryptionMode.toUpperCase().equals("'AES_256_ECB'"))
{
- throw new AnalysisException("Incorrect parameter count in the call
to native function 'aes_encrypt'");
- }
- }
-
- public AesEncryptV2(Expression arg0, Expression arg1, Expression arg2) {
- super(arg0, arg1, arg2);
- }
-
- public AesEncryptV2(Expression arg0, Expression arg1, Expression arg2,
Expression arg3) {
- super(arg0, arg1, arg2, arg3);
- }
-
- /**
- * withChildren.
- */
- @Override
- public AesEncryptV2 withChildren(List<Expression> children) {
- Preconditions.checkArgument(children.size() >= 2 && children.size() <=
4);
- if (children.size() == 2) {
- return new AesEncryptV2(children.get(0), children.get(1));
- } else if (children().size() == 3) {
- return new AesEncryptV2(children.get(0), children.get(1),
children.get(2));
- } else {
- return new AesEncryptV2(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
- }
- }
-
- @Override
- public <R, C> R accept(ExpressionVisitor<R, C> visitor, C context) {
- return visitor.visitAesEncryptV2(this, context);
- }
-}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java
index 6e0f2bb48de..c87c2a42c16 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Decrypt.java
@@ -18,7 +18,6 @@
package org.apache.doris.nereids.trees.expressions.functions.scalar;
import org.apache.doris.catalog.FunctionSignature;
-import org.apache.doris.nereids.exceptions.AnalysisException;
import org.apache.doris.nereids.trees.expressions.Expression;
import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
@@ -63,17 +62,7 @@ public class Sm4Decrypt extends Sm4CryptoFunction {
* constructor with 2 arguments.
*/
public Sm4Decrypt(Expression arg0, Expression arg1) {
- // if there are only 2 params, we need add an empty string as the
third param
- // and set encryption mode to SM4_128_ECB
- // this keeps the behavior consistent with old doris ver.
- super("sm4_decrypt", arg0, arg1, new StringLiteral(""), new
StringLiteral("SM4_128_ECB"));
-
- // check if encryptionMode from session variables is valid
- StringLiteral encryptionMode =
CryptoFunction.getDefaultBlockEncryptionMode("SM4_128_ECB");
- if (!SM4_MODES.contains(encryptionMode.getValue())) {
- throw new AnalysisException(
- "session variable block_encryption_mode is invalid with
sm4");
- }
+ super("sm4_decrypt", arg0, arg1, new StringLiteral(""),
getDefaultBlockEncryptionMode());
}
/**
@@ -98,7 +87,7 @@ public class Sm4Decrypt extends Sm4CryptoFunction {
} else if (children().size() == 3) {
return new Sm4Decrypt(children.get(0), children.get(1),
children.get(2));
} else {
- return new Sm4Decrypt(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
+ return new Sm4Decrypt(children.get(0), children.get(1),
children.get(2), children.get(3));
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4DecryptV2.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4DecryptV2.java
deleted file mode 100644
index 4c743a82945..00000000000
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4DecryptV2.java
+++ /dev/null
@@ -1,69 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.nereids.trees.expressions.functions.scalar;
-
-import org.apache.doris.nereids.exceptions.AnalysisException;
-import org.apache.doris.nereids.trees.expressions.Expression;
-import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
-import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
-
-import com.google.common.base.Preconditions;
-
-import java.util.List;
-
-/**
- * ScalarFunction 'sm4_decrypt'. This class is generated by GenerateFunction.
- */
-public class Sm4DecryptV2 extends Sm4Decrypt {
-
- /**
- * Sm4DecryptV2
- */
- public Sm4DecryptV2(Expression arg0, Expression arg1) {
- super(arg0, arg1);
- throw new AnalysisException("Incorrect parameter count in the call to
native function 'sm4_decrypt'");
- }
-
- public Sm4DecryptV2(Expression arg0, Expression arg1, Expression arg2) {
- super(arg0, arg1, arg2);
- }
-
- public Sm4DecryptV2(Expression arg0, Expression arg1, Expression arg2,
Expression arg3) {
- super(arg0, arg1, arg2, arg3);
- }
-
- /**
- * withChildren.
- */
- @Override
- public Sm4DecryptV2 withChildren(List<Expression> children) {
- Preconditions.checkArgument(children.size() >= 2 && children.size() <=
4);
- if (children.size() == 2) {
- return new Sm4DecryptV2(children.get(0), children.get(1));
- } else if (children().size() == 3) {
- return new Sm4DecryptV2(children.get(0), children.get(1),
children.get(2));
- } else {
- return new Sm4DecryptV2(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
- }
- }
-
- @Override
- public <R, C> R accept(ExpressionVisitor<R, C> visitor, C context) {
- return visitor.visitSm4DecryptV2(this, context);
- }
-}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java
index 00525558d41..dbf5c61db07 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4Encrypt.java
@@ -18,7 +18,6 @@
package org.apache.doris.nereids.trees.expressions.functions.scalar;
import org.apache.doris.catalog.FunctionSignature;
-import org.apache.doris.nereids.exceptions.AnalysisException;
import org.apache.doris.nereids.trees.expressions.Expression;
import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
@@ -58,17 +57,7 @@ public class Sm4Encrypt extends Sm4CryptoFunction {
* constructor with 2 arguments.
*/
public Sm4Encrypt(Expression arg0, Expression arg1) {
- // if there are only 2 params, we need add an empty string as the
third param
- // and set encryption mode to SM4_128_ECB
- // this keeps the behavior consistent with old doris ver.
- super("sm4_encrypt", arg0, arg1, new StringLiteral(""), new
StringLiteral("SM4_128_ECB"));
-
- // check if encryptionMode from session variables is valid
- StringLiteral encryptionMode =
CryptoFunction.getDefaultBlockEncryptionMode("SM4_128_ECB");
- if (!SM4_MODES.contains(encryptionMode.getValue())) {
- throw new AnalysisException(
- "session variable block_encryption_mode is invalid with
sm4");
- }
+ super("sm4_encrypt", arg0, arg1, new StringLiteral(""),
getDefaultBlockEncryptionMode());
}
/**
@@ -93,7 +82,7 @@ public class Sm4Encrypt extends Sm4CryptoFunction {
} else if (children().size() == 3) {
return new Sm4Encrypt(children.get(0), children.get(1),
children.get(2));
} else {
- return new Sm4Encrypt(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
+ return new Sm4Encrypt(children.get(0), children.get(1),
children.get(2), children.get(3));
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4EncryptV2.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4EncryptV2.java
deleted file mode 100644
index 7c895fc3090..00000000000
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4EncryptV2.java
+++ /dev/null
@@ -1,72 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.nereids.trees.expressions.functions.scalar;
-
-import org.apache.doris.nereids.exceptions.AnalysisException;
-import org.apache.doris.nereids.trees.expressions.Expression;
-import org.apache.doris.nereids.trees.expressions.literal.StringLiteral;
-import org.apache.doris.nereids.trees.expressions.visitor.ExpressionVisitor;
-
-import com.google.common.base.Preconditions;
-
-import java.util.List;
-
-/**
- * ScalarFunction 'sm4_encrypt'. This class is generated by GenerateFunction.
- */
-public class Sm4EncryptV2 extends Sm4Encrypt {
-
- /**
- * constructor with 2 arguments.
- */
- public Sm4EncryptV2(Expression arg0, Expression arg1) {
- super(arg0, arg1);
- throw new AnalysisException("Incorrect parameter count in the call to
native function 'sm4_encrypt'");
- }
-
- /**
- * constructor with 3 arguments.
- */
- public Sm4EncryptV2(Expression arg0, Expression arg1, Expression arg2) {
- super(arg0, arg1, arg2);
- }
-
- public Sm4EncryptV2(Expression arg0, Expression arg1, Expression arg2,
Expression arg3) {
- super(arg0, arg1, arg2, arg3);
- }
-
- /**
- * withChildren.
- */
- @Override
- public Sm4EncryptV2 withChildren(List<Expression> children) {
- Preconditions.checkArgument(children.size() >= 2 && children.size() <=
4);
- if (children.size() == 2) {
- return new Sm4EncryptV2(children.get(0), children.get(1));
- } else if (children().size() == 3) {
- return new Sm4EncryptV2(children.get(0), children.get(1),
children.get(2));
- } else {
- return new Sm4EncryptV2(children.get(0), children.get(1),
children.get(2), (StringLiteral) children.get(3));
- }
- }
-
- @Override
- public <R, C> R accept(ExpressionVisitor<R, C> visitor, C context) {
- return visitor.visitSm4EncryptV2(this, context);
- }
-}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/visitor/ScalarFunctionVisitor.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/visitor/ScalarFunctionVisitor.java
index 5d47094f247..20772ae716b 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/visitor/ScalarFunctionVisitor.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/visitor/ScalarFunctionVisitor.java
@@ -24,9 +24,7 @@ import
org.apache.doris.nereids.trees.expressions.functions.combinator.StateComb
import org.apache.doris.nereids.trees.expressions.functions.scalar.Abs;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Acos;
import org.apache.doris.nereids.trees.expressions.functions.scalar.AesDecrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.AesDecryptV2;
import org.apache.doris.nereids.trees.expressions.functions.scalar.AesEncrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.AesEncryptV2;
import
org.apache.doris.nereids.trees.expressions.functions.scalar.AppendTrailingCharIfAbsent;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Array;
import org.apache.doris.nereids.trees.expressions.functions.scalar.ArrayApply;
@@ -368,9 +366,7 @@ import
org.apache.doris.nereids.trees.expressions.functions.scalar.Sleep;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm3;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm3sum;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4Decrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4DecryptV2;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4Encrypt;
-import
org.apache.doris.nereids.trees.expressions.functions.scalar.Sm4EncryptV2;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Space;
import org.apache.doris.nereids.trees.expressions.functions.scalar.SplitByChar;
import
org.apache.doris.nereids.trees.expressions.functions.scalar.SplitByRegexp;
@@ -480,18 +476,10 @@ public interface ScalarFunctionVisitor<R, C> {
return visitScalarFunction(aesDecrypt, context);
}
- default R visitAesDecryptV2(AesDecryptV2 aesDecryptV2, C context) {
- return visitScalarFunction(aesDecryptV2, context);
- }
-
default R visitAesEncrypt(AesEncrypt aesEncrypt, C context) {
return visitScalarFunction(aesEncrypt, context);
}
- default R visitAesEncryptV2(AesEncryptV2 aesEncryptV2, C context) {
- return visitScalarFunction(aesEncryptV2, context);
- }
-
default R visitAppendTrailingCharIfAbsent(AppendTrailingCharIfAbsent
function, C context) {
return visitScalarFunction(function, context);
}
@@ -1836,18 +1824,10 @@ public interface ScalarFunctionVisitor<R, C> {
return visitScalarFunction(sm4Decrypt, context);
}
- default R visitSm4DecryptV2(Sm4DecryptV2 sm4DecryptV2, C context) {
- return visitScalarFunction(sm4DecryptV2, context);
- }
-
default R visitSm4Encrypt(Sm4Encrypt sm4Encrypt, C context) {
return visitScalarFunction(sm4Encrypt, context);
}
- default R visitSm4EncryptV2(Sm4EncryptV2 sm4EncryptV2, C context) {
- return visitScalarFunction(sm4EncryptV2, context);
- }
-
default R visitSpace(Space space, C context) {
return visitScalarFunction(space, context);
}
diff --git
a/regression-test/data/nereids_p0/sql_functions/encryption_digest/test_encryption_function.out
b/regression-test/data/nereids_p0/sql_functions/encryption_digest/test_encryption_function.out
index c1f7d7b1c9d..7a91c1dbf72 100644
---
a/regression-test/data/nereids_p0/sql_functions/encryption_digest/test_encryption_function.out
+++
b/regression-test/data/nereids_p0/sql_functions/encryption_digest/test_encryption_function.out
@@ -11,33 +11,6 @@ text
-- !sql --
\N
--- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-text
-
--- !sql --
-\N
-
--- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-BO2vxHeUcw5BQQalSBbo1w==
-
--- !sql --
-text
-
--- !sql --
-\N
-
--- !sql --
-text
-
-- !sql --
BO2vxHeUcw5BQQalSBbo1w==
@@ -54,25 +27,7 @@ text
text
-- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-tsmK1HzbpnEdR2//WhO+MA==
-
--- !sql --
-ciacXDLHMNG7CD9Kws8png==
-
--- !sql --
-text
-
--- !sql --
-\N
-
--- !sql --
-text
-
--- !sql --
-text
+3dym0E7/+1zbrLIaBVNHSw==
-- !sql --
tsmK1HzbpnEdR2//WhO+MA==
@@ -83,45 +38,12 @@ ciacXDLHMNG7CD9Kws8png==
-- !sql --
\N
--- !sql --
-text
-
--- !sql --
-text
-
--- !sql --
-aDjwRflBrDjhBZIOFNw3Tg==
-
--- !sql --
-1Y4NGIukSbv9OrkZnRD1bQ==
-
--- !sql --
-G5POcFAJwiZHeTtN6DjInQ==
-
--- !sql --
-text
-
--- !sql --
-text
-
-- !sql --
\N
-- !sql --
text
--- !sql --
-1Y4NGIukSbv9OrkZnRD1bQ==
-
--- !sql --
-G5POcFAJwiZHeTtN6DjInQ==
-
--- !sql --
-text
-
--- !sql --
-\N
-
-- !sql --
text
diff --git
a/regression-test/data/query_p0/sql_functions/encryption_digest/test_encryption_function.out
b/regression-test/data/query_p0/sql_functions/encryption_digest/test_encryption_function.out
index 9e920596f89..721412dc036 100644
---
a/regression-test/data/query_p0/sql_functions/encryption_digest/test_encryption_function.out
+++
b/regression-test/data/query_p0/sql_functions/encryption_digest/test_encryption_function.out
@@ -11,33 +11,6 @@ text
-- !sql --
\N
--- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-text
-
--- !sql --
-\N
-
--- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-BO2vxHeUcw5BQQalSBbo1w==
-
--- !sql --
-text
-
--- !sql --
-\N
-
--- !sql --
-text
-
-- !sql --
BO2vxHeUcw5BQQalSBbo1w==
@@ -54,25 +27,7 @@ text
text
-- !sql --
-wr2JEDVXzL9+2XtRhgIloA==
-
--- !sql --
-tsmK1HzbpnEdR2//WhO+MA==
-
--- !sql --
-ciacXDLHMNG7CD9Kws8png==
-
--- !sql --
-text
-
--- !sql --
-\N
-
--- !sql --
-text
-
--- !sql --
-text
+3dym0E7/+1zbrLIaBVNHSw==
-- !sql --
tsmK1HzbpnEdR2//WhO+MA==
@@ -93,7 +48,7 @@ text
text
-- !sql --
-aDjwRflBrDjhBZIOFNw3Tg==
+FSYstvOmH2cXy7B/072Mug==
-- !sql --
1Y4NGIukSbv9OrkZnRD1bQ==
@@ -101,27 +56,12 @@ aDjwRflBrDjhBZIOFNw3Tg==
-- !sql --
G5POcFAJwiZHeTtN6DjInQ==
--- !sql --
-text
-
--- !sql --
-text
-
-- !sql --
\N
-- !sql --
text
--- !sql --
-1Y4NGIukSbv9OrkZnRD1bQ==
-
--- !sql --
-G5POcFAJwiZHeTtN6DjInQ==
-
--- !sql --
-text
-
-- !sql --
\N
diff --git
a/regression-test/suites/nereids_function_p0/scalar_function/S.groovy
b/regression-test/suites/nereids_function_p0/scalar_function/S.groovy
index ea6cc5c817e..98a8685a888 100644
--- a/regression-test/suites/nereids_function_p0/scalar_function/S.groovy
+++ b/regression-test/suites/nereids_function_p0/scalar_function/S.groovy
@@ -97,26 +97,11 @@ suite("nereids_scalar_fn_S") {
qt_sql_sm3sum_Varchar_notnull "select sm3sum(kvchrs1) from
fn_test_not_nullable order by kvchrs1"
qt_sql_sm3sum_String "select sm3sum(kstr) from fn_test order by kstr"
qt_sql_sm3sum_String_notnull "select sm3sum(kstr) from
fn_test_not_nullable order by kstr"
+
sql "select sm4_decrypt(kvchrs1, kvchrs1) from fn_test order by
kvchrs1, kvchrs1"
- test {
- sql "select sm4_decrypt_v2(kvchrs1, kvchrs1) from fn_test order by
kvchrs1, kvchrs1"
- exception "Incorrect parameter count in the call to native function
'sm4_decrypt'"
- }
sql "select sm4_decrypt(kvchrs1, kvchrs1) from fn_test_not_nullable
order by kvchrs1, kvchrs1"
- test {
- sql "select sm4_decrypt_v2(kvchrs1, kvchrs1) from fn_test_not_nullable
order by kvchrs1, kvchrs1"
- exception "Incorrect parameter count in the call to native function
'sm4_decrypt'"
- }
sql "select sm4_decrypt(kstr, kstr) from fn_test order by kstr, kstr"
- test {
- sql "select sm4_decrypt_v2(kstr, kstr) from fn_test order by kstr,
kstr"
- exception "Incorrect parameter count in the call to native function
'sm4_decrypt'"
- }
sql "select sm4_decrypt(kstr, kstr) from fn_test_not_nullable order by
kstr, kstr"
- test {
- sql "select sm4_decrypt_v2(kstr, kstr) from fn_test_not_nullable order
by kstr, kstr"
- exception "Incorrect parameter count in the call to native function
'sm4_decrypt'"
- }
sql "select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1) from fn_test order
by kvchrs1, kvchrs1, kvchrs1"
sql "select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1) from
fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
sql "select sm4_decrypt(kstr, kstr, kstr) from fn_test order by kstr,
kstr, kstr"
@@ -125,34 +110,11 @@ suite("nereids_scalar_fn_S") {
sql "select sm4_decrypt(kvchrs1, kvchrs1, kvchrs1, 'SM4_128_ECB') from
fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
sql "select sm4_decrypt(kstr, kstr, kstr, 'SM4_128_ECB') from fn_test
order by kstr, kstr, kstr"
sql "select sm4_decrypt(kstr, kstr, kstr, 'SM4_128_ECB') from
fn_test_not_nullable order by kstr, kstr, kstr"
- sql "select sm4_decrypt_v2(kvchrs1, kvchrs1, kvchrs1) from fn_test
order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_decrypt_v2(kvchrs1, kvchrs1, kvchrs1) from
fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_decrypt_v2(kstr, kstr, kstr) from fn_test order by
kstr, kstr, kstr"
- sql "select sm4_decrypt_v2(kstr, kstr, kstr) from fn_test_not_nullable
order by kstr, kstr, kstr"
- sql "select sm4_decrypt_v2(kvchrs1, kvchrs1, kvchrs1, 'SM4_128_ECB')
from fn_test order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_decrypt_v2(kvchrs1, kvchrs1, kvchrs1, 'SM4_128_ECB')
from fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_decrypt_v2(kstr, kstr, kstr, 'SM4_128_ECB') from
fn_test order by kstr, kstr, kstr"
- sql "select sm4_decrypt_v2(kstr, kstr, kstr, 'SM4_128_ECB') from
fn_test_not_nullable order by kstr, kstr, kstr"
+
sql "select sm4_encrypt(kvchrs1, kvchrs1) from fn_test order by
kvchrs1, kvchrs1"
- test {
- sql "select sm4_encrypt_v2(kvchrs1, kvchrs1) from fn_test order by
kvchrs1, kvchrs1"
- exception "Incorrect parameter count in the call to native function
'sm4_encrypt'"
- }
sql "select sm4_encrypt(kvchrs1, kvchrs1) from fn_test_not_nullable
order by kvchrs1, kvchrs1"
- test {
- sql "select sm4_encrypt_v2(kvchrs1, kvchrs1) from fn_test_not_nullable
order by kvchrs1, kvchrs1"
- exception "Incorrect parameter count in the call to native function
'sm4_encrypt'"
- }
sql "select sm4_encrypt(kstr, kstr) from fn_test order by kstr, kstr"
- test {
- sql "select sm4_encrypt_v2(kstr, kstr) from fn_test order by kstr,
kstr"
- exception "Incorrect parameter count in the call to native function
'sm4_encrypt'"
- }
sql "select sm4_encrypt(kstr, kstr) from fn_test_not_nullable order by
kstr, kstr"
- test {
- sql "select sm4_encrypt_v2(kstr, kstr) from fn_test_not_nullable order
by kstr, kstr"
- exception "Incorrect parameter count in the call to native function
'sm4_encrypt'"
- }
sql "select sm4_encrypt(kvchrs1, kvchrs1, kvchrs1) from fn_test order
by kvchrs1, kvchrs1, kvchrs1"
sql "select sm4_encrypt(kvchrs1, kvchrs1, kvchrs1) from
fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
sql "select sm4_encrypt(kstr, kstr, kstr) from fn_test order by kstr,
kstr, kstr"
@@ -161,14 +123,7 @@ suite("nereids_scalar_fn_S") {
sql "select sm4_encrypt(kvchrs1, kvchrs1, kvchrs1, 'SM4_128_ECB') from
fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
sql "select sm4_encrypt(kstr, kstr, kstr, 'SM4_128_ECB') from fn_test
order by kstr, kstr, kstr"
sql "select sm4_encrypt(kstr, kstr, kstr, 'SM4_128_ECB') from
fn_test_not_nullable order by kstr, kstr, kstr"
- sql "select sm4_encrypt_v2(kvchrs1, kvchrs1, kvchrs1) from fn_test
order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_encrypt_v2(kvchrs1, kvchrs1, kvchrs1) from
fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_encrypt_v2(kstr, kstr, kstr) from fn_test order by
kstr, kstr, kstr"
- sql "select sm4_encrypt_v2(kstr, kstr, kstr) from fn_test_not_nullable
order by kstr, kstr, kstr"
- sql "select sm4_encrypt_v2(kvchrs1, kvchrs1, kvchrs1, 'SM4_128_ECB')
from fn_test order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_encrypt_v2(kvchrs1, kvchrs1, kvchrs1, 'SM4_128_ECB')
from fn_test_not_nullable order by kvchrs1, kvchrs1, kvchrs1"
- sql "select sm4_encrypt_v2(kstr, kstr, kstr, 'SM4_128_ECB') from
fn_test order by kstr, kstr, kstr"
- sql "select sm4_encrypt_v2(kstr, kstr, kstr, 'SM4_128_ECB') from
fn_test_not_nullable order by kstr, kstr, kstr"
+
sql "select space(10) from fn_test order by kint"
sql "select space(10) from fn_test_not_nullable order by kint"
qt_sql_split_part_Varchar_Varchar_Integer "select split_part(kvchrs1, '
', 1) from fn_test order by kvchrs1"
diff --git
a/regression-test/suites/nereids_p0/sql_functions/encryption_digest/test_encryption_function.groovy
b/regression-test/suites/nereids_p0/sql_functions/encryption_digest/test_encryption_function.groovy
index 84b67091b1e..0a2d4261001 100644
---
a/regression-test/suites/nereids_p0/sql_functions/encryption_digest/test_encryption_function.groovy
+++
b/regression-test/suites/nereids_p0/sql_functions/encryption_digest/test_encryption_function.groovy
@@ -16,10 +16,9 @@
// under the License.
suite("test_encryption_function") {
- def tableName = "dwd_candidates"
- sql "DROP TABLE IF EXISTS ${tableName}"
+ sql "DROP TABLE IF EXISTS dwd_candidates"
sql """
- CREATE TABLE IF NOT EXISTS ${tableName} (
+ CREATE TABLE IF NOT EXISTS dwd_candidates (
c_int INT,
`name` varchar(65530) NULL COMMENT ""
)
@@ -29,26 +28,12 @@ suite("test_encryption_function") {
)
"""
- sql "SET enable_nereids_planner=true"
-
- sql "set batch_size = 4096;"
-
sql "set block_encryption_mode=\"AES_128_ECB\";"
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // wr2JEDVXzL9+2XtRhgIloA==
qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
// text
qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('mvZT1KJw7N0RJf27aipUpg=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- sql "set block_encryption_mode=\"AES_128_ECB\";"
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // wr2JEDVXzL9+2XtRhgIloA==
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
// text
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('mvZT1KJw7N0RJf27aipUpg=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- test {
- sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "session variable block_encryption_mode is invalid with sm4"
- }
-
sql "set block_encryption_mode=\"AES_256_ECB\";"
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 'BO2vxHeUcw5BQQalSBbo1w=='
@@ -56,13 +41,6 @@ suite("test_encryption_function") {
qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3');"
// NULL
qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- sql "set block_encryption_mode=\"AES_256_ECB\";"
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'BO2vxHeUcw5BQQalSBbo1w=='
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 'BO2vxHeUcw5BQQalSBbo1w=='
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
// NULL
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3');"
// text
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
-
sql "set block_encryption_mode=\"AES_256_CBC\";"
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // tsmK1HzbpnEdR2//WhO+MA==
@@ -76,53 +54,6 @@ suite("test_encryption_function") {
"GROUP BY x0;"
}
- sql "set block_encryption_mode=\"AES_256_CBC\";"
- test {
- sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "Incorrect parameter count in the call to native function
'aes_encrypt'"
- }
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // tsmK1HzbpnEdR2//WhO+MA==
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff'));" // ciacXDLHMNG7CD9Kws8png==
- test {
- sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
- exception "Incorrect parameter count in the call to native function
'aes_decrypt'"
- }
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('mvZT1KJw7N0RJf27aipUpg=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('tsmK1HzbpnEdR2//WhO+MA=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('ciacXDLHMNG7CD9Kws8png=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff');" // text
- explain {
- sql "SELECT AES_DECRYPT_v2(UNHEX(r_2_3.`name`),
'namePnhe3E0MWyfZivUnVzDy12caymnrKp', '0123456789') AS x0 FROM dwd_candidates
AS r_2_3\n" +
- "GROUP BY x0;"
- }
-
- sql "set block_encryption_mode=\"SM4_128_CBC\";"
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
aDjwRflBrDjhBZIOFNw3Tg==
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 1Y4NGIukSbv9OrkZnRD1bQ==
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff'));" // G5POcFAJwiZHeTtN6DjInQ==
- qt_sql "SELECT
SM4_DECRYPT(FROM_BASE64('aDjwRflBrDjhBZIOFNw3Tg=='),'F3229A0B371ED2D9441B830D21A390C3');"
// text
- qt_sql "SELECT
SM4_DECRYPT(FROM_BASE64('1Y4NGIukSbv9OrkZnRD1bQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- qt_sql "SELECT
SM4_DECRYPT(FROM_BASE64('G5POcFAJwiZHeTtN6DjInQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- qt_sql "SELECT
SM4_DECRYPT(FROM_BASE64('G5POcFAJwiZHeTtN6DjInQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff');" // text
-
- sql "set block_encryption_mode=\"SM4_128_CBC\";"
- test {
- sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "Incorrect parameter count in the call to native function
'sm4_encrypt'"
- }
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 1Y4NGIukSbv9OrkZnRD1bQ==
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff'));" // G5POcFAJwiZHeTtN6DjInQ==
- test {
- sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('aDjwRflBrDjhBZIOFNw3Tg=='),'F3229A0B371ED2D9441B830D21A390C3');"
- exception "Incorrect parameter count in the call to native function
'sm4_decrypt'"
- }
- qt_sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('1Y4NGIukSbv9OrkZnRD1bQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- qt_sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('G5POcFAJwiZHeTtN6DjInQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- qt_sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('G5POcFAJwiZHeTtN6DjInQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff');" // text
- test {
- sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "session variable block_encryption_mode is invalid with aes"
- }
-
qt_sql "SELECT SM3(\"abc\");"
qt_sql "select sm3(\"abcd\");"
qt_sql "select sm3sum(\"ab\",\"cd\");"
diff --git
a/regression-test/suites/query_p0/sql_functions/encryption_digest/test_encryption_function.groovy
b/regression-test/suites/query_p0/sql_functions/encryption_digest/test_encryption_function.groovy
index 4b0fd3d497d..f4a67b052c3 100644
---
a/regression-test/suites/query_p0/sql_functions/encryption_digest/test_encryption_function.groovy
+++
b/regression-test/suites/query_p0/sql_functions/encryption_digest/test_encryption_function.groovy
@@ -16,10 +16,9 @@
// under the License.
suite("test_encryption_function") {
- def tableName = "dwd_candidates"
- sql "DROP TABLE IF EXISTS ${tableName}"
+ sql "DROP TABLE IF EXISTS dwd_candidates"
sql """
- CREATE TABLE IF NOT EXISTS ${tableName} (
+ CREATE TABLE IF NOT EXISTS dwd_candidates (
c_int INT,
`name` varchar(65530) NULL COMMENT ""
)
@@ -28,7 +27,6 @@ suite("test_encryption_function") {
"replication_num" = "1"
)
"""
- sql "set batch_size = 4096;"
sql "set block_encryption_mode=\"AES_128_ECB\";"
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
@@ -40,16 +38,6 @@ suite("test_encryption_function") {
exception "session variable block_encryption_mode is invalid with sm4"
}
- sql "set block_encryption_mode=\"AES_128_ECB\";"
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // wr2JEDVXzL9+2XtRhgIloA==
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
// text
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('mvZT1KJw7N0RJf27aipUpg=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- test {
- sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "session variable block_encryption_mode is invalid with sm4"
- }
-
sql "set block_encryption_mode=\"AES_256_ECB\";"
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 'BO2vxHeUcw5BQQalSBbo1w=='
@@ -57,13 +45,6 @@ suite("test_encryption_function") {
qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3');"
// NULL
qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- sql "set block_encryption_mode=\"AES_256_ECB\";"
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'BO2vxHeUcw5BQQalSBbo1w=='
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 'BO2vxHeUcw5BQQalSBbo1w=='
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
// NULL
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3');"
// text
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('BO2vxHeUcw5BQQalSBbo1w=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
-
sql "set block_encryption_mode=\"AES_256_CBC\";"
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
'wr2JEDVXzL9+2XtRhgIloA=='
qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // tsmK1HzbpnEdR2//WhO+MA==
@@ -77,26 +58,6 @@ suite("test_encryption_function") {
"GROUP BY x0;"
}
- sql "set block_encryption_mode=\"AES_256_CBC\";"
- test {
- sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "Incorrect parameter count in the call to native function
'aes_encrypt'"
- }
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // tsmK1HzbpnEdR2//WhO+MA==
- qt_sql "SELECT
TO_BASE64(AES_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff'));" // ciacXDLHMNG7CD9Kws8png==
- test {
- sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('wr2JEDVXzL9+2XtRhgIloA=='),'F3229A0B371ED2D9441B830D21A390C3');"
- exception "Incorrect parameter count in the call to native function
'aes_decrypt'"
- }
- qt_sql "SELECT
AES_DECRYPT(FROM_BASE64('mvZT1KJw7N0RJf27aipUpg=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('mvZT1KJw7N0RJf27aipUpg=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('tsmK1HzbpnEdR2//WhO+MA=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- qt_sql "SELECT
AES_DECRYPT_v2(FROM_BASE64('ciacXDLHMNG7CD9Kws8png=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff');" // text
- explain {
- sql "SELECT AES_DECRYPT_v2(UNHEX(r_2_3.`name`),
'namePnhe3E0MWyfZivUnVzDy12caymnrKp', '0123456789') AS x0 FROM dwd_candidates
AS r_2_3\n" +
- "GROUP BY x0;"
- }
-
sql "set block_encryption_mode=\"SM4_128_CBC\";"
qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3'));" //
aDjwRflBrDjhBZIOFNw3Tg==
qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 1Y4NGIukSbv9OrkZnRD1bQ==
@@ -110,25 +71,6 @@ suite("test_encryption_function") {
exception "session variable block_encryption_mode is invalid with aes"
}
- sql "set block_encryption_mode=\"SM4_128_CBC\";"
- test {
- sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "Incorrect parameter count in the call to native function
'sm4_encrypt'"
- }
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789'));" // 1Y4NGIukSbv9OrkZnRD1bQ==
- qt_sql "SELECT
TO_BASE64(SM4_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff'));" // G5POcFAJwiZHeTtN6DjInQ==
- test {
- sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('aDjwRflBrDjhBZIOFNw3Tg=='),'F3229A0B371ED2D9441B830D21A390C3');"
- exception "Incorrect parameter count in the call to native function
'sm4_decrypt'"
- }
- qt_sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('1Y4NGIukSbv9OrkZnRD1bQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // text
- qt_sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('G5POcFAJwiZHeTtN6DjInQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789');" // NULL
- qt_sql "SELECT
SM4_DECRYPT_v2(FROM_BASE64('G5POcFAJwiZHeTtN6DjInQ=='),'F3229A0B371ED2D9441B830D21A390C3',
'0123456789ff');" // text
- test {
- sql "SELECT
TO_BASE64(AES_ENCRYPT_v2('text','F3229A0B371ED2D9441B830D21A390C3'));"
- exception "session variable block_encryption_mode is invalid with aes"
- }
-
qt_sql "SELECT SM3(\"abc\");"
qt_sql "select sm3(\"abcd\");"
qt_sql "select sm3sum(\"ab\",\"cd\");"
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]