@@ -141,6 +141,31 @@ def create_did_test():
141
141
create_tx_cmd = form_did_create_tx_multisig (did_doc_string , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
142
142
run_blockchain_command (create_tx_cmd , f"Registering DID by passing both Alice's and Eve's Signature" )
143
143
144
+ print ("8. FAIL: Alice tries to register a DID Document with duplicate publicKeyMultibase of type Ed25519VerificationKey2020 \n " )
145
+ kp_alice = generate_key_pair ()
146
+ signers = []
147
+ did_doc_string = generate_did_document (kp_alice )
148
+ did_doc_string_2 = generate_did_document (kp_alice )
149
+
150
+ did_doc_string_vm_1 = did_doc_string ["verificationMethod" ][0 ]
151
+ did_doc_string_vm_2 = did_doc_string_2 ["verificationMethod" ][0 ]
152
+ did_doc_string_vm_2 ["id" ] = did_doc_string_vm_2 ["id" ] + "new"
153
+
154
+ did_doc_string ["verificationMethod" ] = [
155
+ did_doc_string_vm_1 ,
156
+ did_doc_string_vm_2
157
+ ]
158
+
159
+ did_doc_alice = did_doc_string ["id" ]
160
+ signPair_alice = {
161
+ "kp" : kp_alice ,
162
+ "verificationMethodId" : did_doc_string ["verificationMethod" ][0 ]["id" ],
163
+ "signing_algo" : "ed25519"
164
+ }
165
+ signers .append (signPair_alice )
166
+ create_tx_cmd = form_did_create_tx_multisig (did_doc_string , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
167
+ run_blockchain_command (create_tx_cmd , f"Registering Alice's DID with Id: { did_doc_alice } " , True , True )
168
+
144
169
print ("--- Test Completed ---\n " )
145
170
146
171
# TC - II : Update DID scenarios
@@ -657,6 +682,8 @@ def caip10_ethereum_support_test():
657
682
"eip155:1" ,
658
683
"eip155:::::23" ,
659
684
"eip155::0x1234567"
685
+ "eip155:1000231432:0x23" ,
686
+ "eip155:jagrat:0x23"
660
687
]
661
688
662
689
for invalid_blockchain_id in invalid_blockchain_account_ids :
@@ -673,7 +700,7 @@ def caip10_ethereum_support_test():
673
700
}
674
701
signers .append (signPair )
675
702
create_tx_cmd = form_did_create_tx_multisig (did_doc_string , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
676
- run_blockchain_command (create_tx_cmd , f"Registering a DID Document with an invalid blockchainAccountId: { invalid_blockchain_id } " , True )
703
+ run_blockchain_command (create_tx_cmd , f"Registering a DID Document with an invalid blockchainAccountId: { invalid_blockchain_id } " , True , True )
677
704
678
705
print ("Registering a DID with a VM of type EcdsaSecp256k1SignatureRecovery2020 having publicKeyMultibase attribute populated" )
679
706
kp = generate_key_pair (algo = kp_algo )
@@ -728,7 +755,7 @@ def caip10_cosmos_support_test():
728
755
"cosmos:::::23" ,
729
756
"cosmos::0x1234567"
730
757
]
731
-
758
+ print ( "1. FAIL: Registering a DID Document with an invalid blockchainAccountIds. \n " )
732
759
for invalid_blockchain_id in invalid_blockchain_account_ids :
733
760
print ("Registering a DID Document with an invalid blockchainAccountId:" , invalid_blockchain_id )
734
761
kp = generate_key_pair (algo = kp_algo )
@@ -745,9 +772,9 @@ def caip10_cosmos_support_test():
745
772
signers .append (signPair )
746
773
747
774
create_tx_cmd = form_did_create_tx_multisig (did_doc_string , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
748
- run_blockchain_command (create_tx_cmd , f"Registering a DID Document with an invalid blockchainAccountId: { invalid_blockchain_id } " , True )
775
+ run_blockchain_command (create_tx_cmd , f"Registering a DID Document with an invalid blockchainAccountId: { invalid_blockchain_id } " , True , True )
749
776
750
- print ("Registering a DID with a VM of type EcdsaSecp256k1VerificationKey2019 having both publicKeyMultibase and blockchainAccountId attributes populated" )
777
+ print ("2. PASS: Registering a DID with a VM of type EcdsaSecp256k1VerificationKey2019 having both publicKeyMultibase and blockchainAccountId attributes populated" )
751
778
kp = generate_key_pair (algo = kp_algo )
752
779
did_doc_string = generate_did_document (kp , kp_algo )
753
780
did_doc_id = did_doc_string ["id" ]
@@ -761,7 +788,7 @@ def caip10_cosmos_support_test():
761
788
create_tx_cmd = form_did_create_tx_multisig (did_doc_string , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
762
789
run_blockchain_command (create_tx_cmd , f"Registering the DID with DID Id { did_doc_id } " )
763
790
764
- print ("Registering a DID with invalid chain-id in blockchainAccountId" )
791
+ print ("3. FAIL: Registering a DID with invalid chain-id in blockchainAccountId" )
765
792
kp = generate_key_pair (algo = kp_algo )
766
793
did_doc_string = generate_did_document (kp , kp_algo )
767
794
did_doc_id = did_doc_string ["id" ]
@@ -775,9 +802,146 @@ def caip10_cosmos_support_test():
775
802
"signing_algo" : kp_algo
776
803
}
777
804
signers .append (signPair )
778
-
779
805
create_tx_cmd = form_did_create_tx_multisig (did_doc_string , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
780
- run_blockchain_command (create_tx_cmd , f"Registering DID with Id: { did_doc_id } " , True )
806
+ run_blockchain_command (create_tx_cmd , f"Registering DID with Id: { did_doc_id } " , True , True )
807
+
808
+ print ("4. PASS: Registering a DID with two VM of type EcdsaSecp256k1VerificationKey2019 with duplicate publicKeyMultibase and different blockchain account Id" )
809
+ kp = generate_key_pair (algo = kp_algo )
810
+
811
+ did_doc_string_1 = generate_did_document (kp , kp_algo )
812
+ did_doc_string_2 = generate_did_document (kp , kp_algo , "osmo" )
813
+ did_doc_string_2_vm = did_doc_string_2 ["verificationMethod" ][0 ]
814
+ did_doc_string_2_vm ["id" ] = did_doc_string_2_vm ["id" ] + "new"
815
+
816
+ did_doc_string_1 ["verificationMethod" ] = [
817
+ did_doc_string_1 ["verificationMethod" ][0 ],
818
+ did_doc_string_2_vm ,
819
+ ]
820
+ did_doc_id = did_doc_string_1 ["id" ]
821
+
822
+ signers = []
823
+ signPair1 = {
824
+ "kp" : kp ,
825
+ "verificationMethodId" : did_doc_string_1 ["verificationMethod" ][0 ]["id" ],
826
+ "signing_algo" : kp_algo
827
+ }
828
+ signPair2 = {
829
+ "kp" : kp ,
830
+ "verificationMethodId" : did_doc_string_2 ["verificationMethod" ][0 ]["id" ],
831
+ "signing_algo" : kp_algo
832
+ }
833
+ signers .append (signPair1 )
834
+ signers .append (signPair2 )
835
+ create_tx_cmd = form_did_create_tx_multisig (did_doc_string_1 , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
836
+ run_blockchain_command (create_tx_cmd , f"Registering the DID with DID Id { did_doc_id } " )
837
+
838
+ print ("5. PASS: Registering a DID with two VM of type EcdsaSecp256k1VerificationKey2019 with duplicate publicKeyMultibase but one of them is without a blockchain account id" )
839
+ kp = generate_key_pair (algo = kp_algo )
840
+
841
+ did_doc_string_1 = generate_did_document (kp , kp_algo )
842
+ did_doc_string_2 = generate_did_document (kp , kp_algo )
843
+ did_doc_string_2_vm = did_doc_string_2 ["verificationMethod" ][0 ]
844
+ did_doc_string_2_vm ["id" ] = did_doc_string_2_vm ["id" ] + "new"
845
+
846
+ #Remove blockchainAccountIds
847
+ did_doc_string_1 ["verificationMethod" ][0 ]["blockchainAccountId" ] = ""
848
+
849
+ did_doc_string_1 ["verificationMethod" ] = [
850
+ did_doc_string_1 ["verificationMethod" ][0 ],
851
+ did_doc_string_2_vm ,
852
+ ]
853
+ did_doc_id = did_doc_string_1 ["id" ]
854
+
855
+ signers = []
856
+ signPair1 = {
857
+ "kp" : kp ,
858
+ "verificationMethodId" : did_doc_string_1 ["verificationMethod" ][0 ]["id" ],
859
+ "signing_algo" : kp_algo
860
+ }
861
+ signPair2 = {
862
+ "kp" : kp ,
863
+ "verificationMethodId" : did_doc_string_2 ["verificationMethod" ][0 ]["id" ],
864
+ "signing_algo" : kp_algo
865
+ }
866
+ signers .append (signPair1 )
867
+ signers .append (signPair2 )
868
+ create_tx_cmd = form_did_create_tx_multisig (did_doc_string_1 , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
869
+ run_blockchain_command (create_tx_cmd , f"Registering the DID with DID Id { did_doc_id } " )
870
+
871
+ print ("6. FAIL: Registering a DID with two VM of type EcdsaSecp256k1VerificationKey2019 with duplicate publicKeyMultibase and duplicate blockchainAccountId" )
872
+ kp = generate_key_pair (algo = kp_algo )
873
+
874
+ did_doc_string_1 = generate_did_document (kp , kp_algo )
875
+ did_doc_string_2 = generate_did_document (kp , kp_algo )
876
+
877
+ did_doc_vm1 = did_doc_string_1 ["verificationMethod" ][0 ]
878
+ did_doc_vm2 = did_doc_string_2 ["verificationMethod" ][0 ]
879
+
880
+ # Change vm id
881
+ did_doc_vm1 ["id" ] = did_doc_vm1 ["id" ] + "news"
882
+ did_doc_vm2 ["id" ] = did_doc_vm1 ["id" ] + "2"
883
+
884
+
885
+ did_doc_string_1 ["verificationMethod" ] = [
886
+ did_doc_vm1 ,
887
+ did_doc_vm2
888
+ ]
889
+ did_doc_id = did_doc_string_1 ["id" ]
890
+
891
+ signers = []
892
+ signPair1 = {
893
+ "kp" : kp ,
894
+ "verificationMethodId" : did_doc_string_1 ["verificationMethod" ][0 ]["id" ],
895
+ "signing_algo" : kp_algo
896
+ }
897
+ signPair2 = {
898
+ "kp" : kp ,
899
+ "verificationMethodId" : did_doc_string_1 ["verificationMethod" ][1 ]["id" ],
900
+ "signing_algo" : kp_algo
901
+ }
902
+ signers .append (signPair1 )
903
+ signers .append (signPair2 )
904
+ create_tx_cmd = form_did_create_tx_multisig (did_doc_string_1 , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
905
+ run_blockchain_command (create_tx_cmd , f"Registering the DID with DID Id { did_doc_id } " , True , True )
906
+
907
+ print ("7. FAIL: Registering a DID with two VM of type EcdsaSecp256k1VerificationKey2019 with duplicate publicKeyMultibase and no blockchainAccountId in either of them" )
908
+ kp = generate_key_pair (algo = kp_algo )
909
+
910
+ did_doc_string_1 = generate_did_document (kp , kp_algo )
911
+ did_doc_string_2 = generate_did_document (kp , kp_algo )
912
+
913
+ did_doc_vm1 = did_doc_string_1 ["verificationMethod" ][0 ]
914
+ did_doc_vm2 = did_doc_string_2 ["verificationMethod" ][0 ]
915
+
916
+ # Change vm id
917
+ did_doc_vm1 ["id" ] = did_doc_vm1 ["id" ] + "news"
918
+ did_doc_vm2 ["id" ] = did_doc_vm1 ["id" ] + "2"
919
+
920
+ # Remove blockchainAccountId
921
+ did_doc_vm1 ["blockchainAccountId" ] = ""
922
+ did_doc_vm2 ["blockchainAccountId" ] = ""
923
+
924
+ did_doc_string_1 ["verificationMethod" ] = [
925
+ did_doc_vm1 ,
926
+ did_doc_vm2
927
+ ]
928
+ did_doc_id = did_doc_string_1 ["id" ]
929
+
930
+ signers = []
931
+ signPair1 = {
932
+ "kp" : kp ,
933
+ "verificationMethodId" : did_doc_string_1 ["verificationMethod" ][0 ]["id" ],
934
+ "signing_algo" : kp_algo
935
+ }
936
+ signPair2 = {
937
+ "kp" : kp ,
938
+ "verificationMethodId" : did_doc_vm2 ["id" ],
939
+ "signing_algo" : kp_algo
940
+ }
941
+ signers .append (signPair1 )
942
+ signers .append (signPair2 )
943
+ create_tx_cmd = form_did_create_tx_multisig (did_doc_string_1 , signers , DEFAULT_BLOCKCHAIN_ACCOUNT_NAME )
944
+ run_blockchain_command (create_tx_cmd , f"Registering the DID with DID Id { did_doc_id } " , True , True )
781
945
782
946
print ("--- Test Completed ---\n " )
783
947
0 commit comments