diff --git a/src/kas/sp800-56c/hkdf/sections/04-testtypes.adoc b/src/kas/sp800-56c/hkdf/sections/04-testtypes.adoc index 8120a79fe..5d9dc7939 100644 --- a/src/kas/sp800-56c/hkdf/sections/04-testtypes.adoc +++ b/src/kas/sp800-56c/hkdf/sections/04-testtypes.adoc @@ -10,8 +10,6 @@ There are two test types for KDA testing: * "AFT" - Algorithm Function Test. In the AFT test mode, the IUT *SHALL* act as a party in the Key Agreement with the ACVP server. The server *SHALL* generate and provide all necessary information for the IUT to perform a successful key agreement; both the server and IUT *MAY* act as party U/V. -* "VAL" - Validation Test. In the VAL test mode, The ACVP server *MUST* generate a complete (from both party U and party V's perspectives) key agreement, and expects the IUT to be able to determine if that agreement is valid. Various types of errors *MUST* be introduced in varying portions of the key agreement process that the IUT *MUST* be able to detect and report on. - === Test Coverage The tests described in this document have the intention of ensuring an implementation is conformant to <> and <>. diff --git a/src/kas/sp800-56c/hkdf/sections/06-test-vectors.adoc b/src/kas/sp800-56c/hkdf/sections/06-test-vectors.adoc index d485fcc86..d47c9bab5 100644 --- a/src/kas/sp800-56c/hkdf/sections/06-test-vectors.adoc +++ b/src/kas/sp800-56c/hkdf/sections/06-test-vectors.adoc @@ -64,7 +64,6 @@ Each test group contains an array of one or more test cases. Each test case is a | JSON Value | Description | JSON Type | tcId | Numeric identifier for the test case, unique across the entire vector set. | integer -| dkm | Derived keying material value for VAL tests. | hex | kdfParameter | Object representing inputs into the KDA for single expansion tests. | See <>. | fixedInfoPartyU | Fixed information specific to party U for single expansion tests. | See <>. | fixedInfoPartyV | Fixed information specific to party V for single expansion tests. | See <>. @@ -240,109 +239,6 @@ The following is a example JSON object for KDA HKDF test vectors sent from the A } } ] - }, - { - "tgId": 17, - "testType": "VAL", - "kdfConfiguration": { - "kdfType": "hkdf", - "l": 1024, - "saltLen": 512, - "saltMethod": "default", - "fixedInfoPattern": "uPartyInfo||vPartyInfo||l", - "fixedInfoEncoding": "concatenation", - "hmacAlg": "SHA2-224" - }, - "zLength": 224, - "tests": [ - { - "tcId": 501, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "DE6AACB5503BCE94E64D6B8772B67FC43092BA8753356E1A109218E6", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "69BF11A09D903C658FB2FF76F9645CA5", - "ephemeralData": "DB4A0C27CDC4B998562AAD56036D5A41DC18AAE02E475D7863A3562C" - }, - "fixedInfoPartyV": { - "partyId": "5595CA1CFF2D7BC6558851D20E8245AF" - }, - "dkm": "A3C6AED567A05C6EFAC5C3E42BA24974BDA382ACD44E748F37317900DDDD77F6637897D37AD2C0C72EDC01B6D1AFD019F181533DCC60A56718A715F56CEFF6F78D00FE276175BE4674156C0C5FA8E70B226AEC0F169F3F602EF728B3C1AC6BB6C2A8052D858E150D943B9014A7C2E8A658B61BA79429479660DEB56F2E3E6FA0" - }, - { - "tcId": 502, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "0810C7FE90B9C0228BDEC50E57EDC03392D7F9AECFC7DF1BD6F921C2", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "914E90330C165C57CC29689E44642695" - }, - "fixedInfoPartyV": { - "partyId": "F03F633609E1CC983F5D82D56201ACE5", - "ephemeralData": "479C050507A4BF432940D27D48BF40BA794E2BE8A2CE1A0E81E37FC8" - }, - "dkm": "9B9A32A967D0D9FF6798199B4696B7457EC64E7747962F96637422450D9A631068540A647D262D1D0BFE4C790AD937BBB03DF7BD527294DCADECBC1E4BD3225556C10AEDD8360A083BE157859FE8914468DBA57C5244CCE98791DC3EFEFFD25942E204D603D64A766D998F72C955985766E7BBCB5BF08FDC24ECA0C6D7EF078D" - }, - { - "tcId": 503, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "EEE8EF6DD5DBB38AFFFC0BDAD611C5EB3C2D7C7B79688787E8A1BD54", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "A34D62AFF61666BDBF9580D8596F8438", - "ephemeralData": "F5741952306B63D30CF6417A9F977BCBE1A0A9A964DA9789F0BEA59C" - }, - "fixedInfoPartyV": { - "partyId": "D62EF595ECAEFD294AD07D3765284F05", - "ephemeralData": "927C754DAA4DAA3A815A5EE5236F9E8E3A388496562135577FEBF1DD" - }, - "dkm": "0B3F948164FA9938CF29F6C5FD126AA7408E4C5D3326994932D1DBBF910F783E8E550BCA12515EA902950A959211F3C0DD9F38EC9305A3121F04F4BDBADC7D5F1428F08B6A71CE4B52FBCC718020E9E74FFA77C83157556BC9CA3014E4EC916EC43DFBAD6D13B9B280DB90E36D28C7E3503684CEC49B1ED314421699CADCC89A" - }, - { - "tcId": 504, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "56BBD9C1C5B1A686314B0818E42E93F11C18600493A49C52534DD839", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "D6655CE5706E4F73221229ADE9507049", - "ephemeralData": "99C8700C80C86F2F1093494DE17992872793D662DE4C8F26419F81D2" - }, - "fixedInfoPartyV": { - "partyId": "524A0A03E023151B58EE93DA402A4CDA", - "ephemeralData": "2537C520A3F34C52AB1603B2C7B5351FB86302C6D212988EF5BDECFB" - }, - "dkm": "2C32DB432AB45F95F29418778524C7BA9692D0419B6F379F51B3996E2E092B4A845EE0FDCA2FA42E7C58E52B50CC83EA1D61311B4D81CA7F01C54E5CB6603CE8E37D603066574054A5F8E20B990CADC37B6DA8113A45871974E7C51365FF860BE8DB7B734A97029F5650C3E076F45B3B8802A4F68D611D754C336530701308F2" - }, - { - "tcId": 505, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "8CEF2CEB7F8BB2D7A75200A9B968FA6C998FB365D1E368CCF87BC0E0", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "534591B3457E8284ED782F27CA8C0863" - }, - "fixedInfoPartyV": { - "partyId": "799F0DFC352EB3BABC6E9FCD8A28BBA8", - "ephemeralData": "4A7B6D0D1D699602C6704223386D45F40D8226347A813D72C4275C6E" - }, - "dkm": "B1AE1B451E375F2B14C58D115CAB2689D5F4E827D9E9DB66224ADB6D4108A5AA861B3A7169DFD683AD3ED713029F2720CC2DE2F105968157F02F91C1CAADD2B6846AA54B5131777E38BF75CC772B9CD4F7647CC9ADD614E0192BFE7A41C03A0D47756D1C8EA163B2A2B7AD73E2ADB6509E7C3794893FB1AF7776829B280E3F73" - } - ] } ] } @@ -474,139 +370,6 @@ The following is a example JSON object for KDA HKDF test vectors sent from the A } } ] - }, - { - "tgId": 201, - "testType": "VAL", - "kdfConfiguration": { - "kdfType": "hkdf", - "l": 1024, - "saltLen": 512, - "saltMethod": "default", - "fixedInfoPattern": "uPartyInfo||vPartyInfo||l", - "fixedInfoEncoding": "concatenation", - "hmacAlg": "SHA2-224" - }, - "zLength": 280, - "usesHybridSharedSecret": true, - "auxSharedSecretLen": 128, - "multiExpansion": false, - "tests": [ - { - "tcId": 1001, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "88D8AC2D6D75147EC9ACF1D885F0407C7E3CBB2A48DAB0FD121813AC0DDECE875A6CC8", - "t": "F9E46546388A90BBD85207ED6E6205A0", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "600D500E36E5D32A232CEA95797B59DC" - }, - "fixedInfoPartyV": { - "partyId": "89B765B50FAE21E988A2D4ECFF15CB3D" - }, - "dkm": "A0EC5BDE1C2A4CD814A9A258FF1D608BA7161CD961F0668C030CED65D27063C41743578ED5BB3CE21B535C4D5EF52BA96FB7F005BCBDDAF43B784F0D74ADFD3F634CBB3E186A904DDC8E470562C2B61F88F25D87091EFC305CA5314DBE84B5FC751545FD3CAA3D9D2D6A18026259044C43B93BB16AD64E6C7C45877E37F4E1F3" - }, - { - "tcId": 1002, - "kdfParameter": { - "kdfType": "hkdf", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "z": "774842CB739C91BFA58F52594AEA02B838AA8DCA00102CC18CE5A7166EE1C77B9841D7", - "t": "D189BB492E9413A0420A96B8FFDE451E", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "7EC0710B84AF3C38293FF6EDC37667E7" - }, - "fixedInfoPartyV": { - "partyId": "08045B60BD45AAA7F72180ABAE85E299" - }, - "dkm": "5C535DA521DB5260924BFD59538C1742B6325EBCF110EE0E8189CF23F0A43F5777481E6241E05865E86AA584093E7DE16204838ACA1E6798B163B43AB3EF072EF1AC192EC7F08002DA6E149F1F58E4E4EFFDDE55EAF54F9D4B6BD73FDF8FCEABD965AD86481751653410A01C0CAC0FEA73E9F0FC464F7A2230E4373DE5036E0B" - } - ] - }, - { - "tgId": 202, - "testType": "VAL", - "zLength": 280, - "usesHybridSharedSecret": true, - "auxSharedSecretLen": 128, - "multiExpansion": true, - "kdfMultiExpansionConfiguration": { - "kdfType": "hkdf", - "l": 1024, - "saltLen": 512, - "saltMethod": "default", - "hmacAlg": "SHA2-224" - }, - "tests": [ - { - "tcId": 1006, - "kdfMultiExpansionParameter": { - "kdfType": "hkdf", - "z": "60D8AADBD25EDB2B2111650DA11CBF7695178BC714580555376298A93577F8670C5E1A", - "t": "0C2C369126D49BECB2E79693D795E508", - "hmacAlg": "SHA2-224", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "iterationParameters": [ - { - "l": 1024, - "fixedInfo": "AC8436F7EC4E82E61CE75720ADC6BEA0" - }, - { - "l": 1024, - "fixedInfo": "EF674F42A1E788B97BD374D959A48F79" - }, - { - "l": 1024, - "fixedInfo": "D0FCF1667B6F832242F7D0760C3D8FE0" - } - ] - }, - "dkms": [ - "5799CF30BF9962CB93F43B9E77BDE2FC7CD84831A828918090EE5702CD199E08D535D865227BAA2D525E34231B8913E046DFA8DBD02168BC3C335EB951D0B54617EB14BC8AEA35014F549E0012ECCAEDC09B50584F96D8E30E049A2A2F328E0317B29D719B1B0400033A3EAABBABD0F7B58E19BF3AD126556B53944935FDD940", - "822B00F5D52CA132D31EDFAE4BD41B85EC7A28390578699FA4F4125ECCD2DE492538F2DD1638143DF88AAEDAED62B10510978AE3D3ABA0F70CDB13F7FD5A15081523F29F9FEFD860D4226AF8EAA0643C5C2D21B31D1CCF5BA149D39036C9724204956FEEA88419A649AF5A000DD6A719BBE764E4A2A590BD3E5A6FAAEEC9428F", - "83FA92F7D2B58DBCF1F5EC97714B9AEB1B72FBB7F0647DEA98CB955A1FB6AAE638652403AE92EA383333DFA8A3BB0CF9EF832C01A3D48803EB24F888AF85FC615E09F537074343A40961CEF01F30536925015E5F1256B25593379A6CB7BDE60381B10B3CECB9287CA96A1541A74BF8BBEB2B6EC4A6807D0607CE9F70DAE557FD" - ] - }, - { - "tcId": 1007, - "kdfMultiExpansionParameter": { - "kdfType": "hkdf", - "z": "214266BEB39DC34DE9F9E79EF7ECAE46AD5377652E5CA25EF0CCD5233A720DD1152336", - "t": "B5E3EBF9492A32D51CDFED3C924CD696", - "hmacAlg": "SHA2-224", - "salt": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "iterationParameters": [ - { - "l": 1024, - "fixedInfo": "AB6328F195B1E7BC08D959CD482F17F0" - }, - { - "l": 1024, - "fixedInfo": "DA9E2AD50EF93AEA6EA08427931EA3B3" - }, - { - "l": 1024, - "fixedInfo": "4747A897E370E439BC87F3125F1F8F5D" - }, - { - "l": 1024, - "fixedInfo": "9132CA60935EC1776B18AC25F68AA56C" - } - ] - }, - "dkms": [ - "83FA1B81C2DB911D42EB2C026B34485074995C029D841D3B4AEF5E9C8213EBD343AEDBD379F20809266977BC4BA21EA51ADBF3D34798FA1658D8BBA88161120F4DF8C2E19E737B5E11D168AD18FF37528D187298B3C8F700654C9DDB28BC26209132CAD75C7828EA225ED81E2C97AA2C5E44777DE07EC2374A2D0701FD5D66BE", - "7FC003A357754CF05293602DE37848266A1C206E3F33598A225D181FA27B9F1067AF59295F5147A769AD87A947FAAF6DF5BDC15E609F91E80F0C50CCD6580C489802AAF43614DB73544EF3FE1BD0F5B0CC0B0153E1C44DCB2399F5A80371AC8FB747DC337BBCAB717150CF59FA0CE607CB2258BD7AC1E636F8DB3B89EEE2C2E3", - "DC9235A585436EDC4B31460D46FC825AE90B77971405AA757BF830ACE8EA494E9C978C7D97D77F0DB86669611B090828E6C511AB94F83A3276DF014482C000734166204D354A500092F05F27916EDF5DB830463A9BDE63E63CD1F4A94AA1E5B8F65A0CB59735435DEBC37B287E2D20761FAEBDC779BDCA174E4EAF61A2488370", - "13F9F740B48C1E6CC1B8667A3320B58826DABA0BC204BDD91D21F5AA38BA8BC7EB6DC2F19FCC988EF154ED274733558C83C1A723E625178C5C05CB5A01865F061079320D866DACA0CFBD7A285174D20DBB100ADA7F2AAD22A1FBC77763D84C5475D998811DC80A99E5FA27160BA83BF343E6B0AB0CAF7C1FBBAA51265F83DA4F" - ] - } - ] } ] } diff --git a/src/kas/sp800-56c/onestep/sections/04-testtypes.adoc b/src/kas/sp800-56c/onestep/sections/04-testtypes.adoc index 8c6929e09..906c0e695 100644 --- a/src/kas/sp800-56c/onestep/sections/04-testtypes.adoc +++ b/src/kas/sp800-56c/onestep/sections/04-testtypes.adoc @@ -10,8 +10,6 @@ There are two test types for KDA testing: * "AFT" - Algorithm Function Test. In the AFT test mode, the IUT *SHALL* act as a party in the Key Agreement with the ACVP server. The server *SHALL* generate and provide all necessary information for the IUT to perform a successful key agreement; both the server and IUT *MAY* act as party U/V. -* "VAL" - Validation Test. In the VAL test mode, The ACVP server *MUST* generate a complete (from both party U and party V's perspectives) key agreement, and expects the IUT to be able to determine if that agreement is valid. Various types of errors *MUST* be introduced in varying portions of the key agreement process that the IUT *MUST* be able to detect and report on. - === Test Coverage The tests described in this document have the intention of ensuring an implementation is conformant to <> and <>. diff --git a/src/kas/sp800-56c/onestep/sections/06-test-vectors.adoc b/src/kas/sp800-56c/onestep/sections/06-test-vectors.adoc index 28c024acc..a5bb8d1d7 100644 --- a/src/kas/sp800-56c/onestep/sections/06-test-vectors.adoc +++ b/src/kas/sp800-56c/onestep/sections/06-test-vectors.adoc @@ -162,75 +162,7 @@ The following is a example JSON object for KDA OneStep test vectors sent from t "fixedInfoEncoding": "concatenation", "auxFunction": "KMAC-128" } - }, - { - "tgId": 62, - "testType": "VAL", - "tests": [ - { - "tcId": 276, - "kdfParameter": { - "kdfType": "oneStep", - "salt": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "t": "ACAACF33C0CFEA2B0B6FE884E3FD1C76", - "z": "4B683C8CBC7028E528ABD784137EB255C3105008D8D78EC38D8C79CEE2A1D6A2", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "F8E181C1F45364D1686DFEA344082A0E" - }, - "fixedInfoPartyV": { - "partyId": "51B6A79C64A970909E071057FAC4A75C", - "ephemeralData": "9CBC3504C48D13A6011AB6407A31941EB153AD804DFE37806C011ACF1629FFDF" - }, - "dkm": "9749C26AB38765D404CF3470E565506150382A12DD4F0D13BE26BA13563DB07F2BAB8A4B52BED6B9B25497D1568D0619077E7CD4DEC4BECC661A4D0721125BFB7693B1BA2D400FC233AAB90E01ADB8348021A7A5CCFD7159E632B7495678D808757F09E642CDC5B47BBCF8E418113C5B7CCE4B32984EA4EB31B108A6BC39317F" - }, - { - "tcId": 277, - "kdfParameter": { - "kdfType": "oneStep", - "salt": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "t": "D106D45E752306418108A1A69D3B6DDA", - "z": "E2B857A381F3A97D4B4A1AE56DDF3B5EDB6C9DB91B03C64CB91D697CD28C6519", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "A3C8ED9DE050824F715699067F76AF78" - }, - "fixedInfoPartyV": { - "partyId": "0DF4169C75D354401AFFEC99F4221648", - "ephemeralData": "5B6BB3FC8244C56576C3DEEE95415BE650E190AE6AC9631D6EE5C5D5EC2709A2" - }, - "dkm": "2BCD760599ED47108D77BC1AFB2CB804123C39297CEE67A7534415D7ACFE7ACCDFBEC29E6B3A07FB6D0733755D038ABBCCBFEF8495FF53091CC9A1166050F89785C6E6D2016132EB4A550B3376C705F884DE0B1465046EC98C0FA437BC60AFFE22D0828B4426E62A63590F9F269D45778619EE73F0D86676D0F87AD35D9EBF20" - }, - { - "tcId": 278, - "kdfParameter": { - "kdfType": "oneStep", - "salt": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "t": "8F4F473B36EC804E3991D3644DD50715", - "z": "CE9D5E67F3C01596438EF93639C53DFBF63ABF74BA5622530AC5690927D9502F", - "l": 1024 - }, - "fixedInfoPartyU": { - "partyId": "8FC4D67C41F9CB42AC556FB1B2227C1F" - }, - "fixedInfoPartyV": { - "partyId": "85F5A2D1A9F39095C236581581FE3BF6" - }, - "dkm": "815955F14297C53C98FD5922CFE24A7E27D70FF20897B59EC9844240D9EFE8B1D51FBDDAF629B2B13C902DBD348D65D11D482E5072A0224A9F5E68F612FC68EB7D3C8B38B3CF945AC6086F683DC8D769AA3E4F3189ED48B8B27AAF93B9BD35D65D7996FBB9FCE4E3DAC4FBF1E15CDDE55D5CA741B3344BFE107A8E42C64D2C16" - } - ], - "kdfConfiguration": { - "kdfType": "oneStep", - "l": 1024, - "saltLen": 1312, - "saltMethod": "default", - "fixedInfoPattern": "t||uPartyInfo||vPartyInfo||l", - "fixedInfoEncoding": "concatenation", - "auxFunction": "KMAC-128" - } - } + } ] } ---- \ No newline at end of file diff --git a/src/kas/sp800-56c/onestep/sections/07-responses.adoc b/src/kas/sp800-56c/onestep/sections/07-responses.adoc index 854459868..dc4da7026 100644 --- a/src/kas/sp800-56c/onestep/sections/07-responses.adoc +++ b/src/kas/sp800-56c/onestep/sections/07-responses.adoc @@ -31,7 +31,6 @@ The following table describes the JSON object that represents a test case respon | JSON Property | Description | JSON Type | tcId | The test case identifier | integer -| testPassed | Was the provided `dkm` valid? Only valid for the "VAL" test type. | boolean | dkm | The derived keying material. Provided by the IUT for "AFT" test type test cases. For single expansion tests. | hex |=== diff --git a/src/kas/sp800-56c/onestepnocounter/sections/04-testtypes.adoc b/src/kas/sp800-56c/onestepnocounter/sections/04-testtypes.adoc index b1fa39b1e..8bc4efd42 100644 --- a/src/kas/sp800-56c/onestepnocounter/sections/04-testtypes.adoc +++ b/src/kas/sp800-56c/onestepnocounter/sections/04-testtypes.adoc @@ -10,8 +10,6 @@ There are two test types for KDA testing: * "AFT" - Algorithm Function Test. In the AFT test mode, the IUT *SHALL* act as a party in the Key Agreement with the ACVP server. The server *SHALL* generate and provide all necessary information for the IUT to perform a successful key agreement; both the server and IUT *MAY* act as party U/V. -* "VAL" - Validation Test. In the VAL test mode, The ACVP server *MUST* generate a complete (from both party U and party V's perspectives) key agreement, and expects the IUT to be able to determine if that agreement is valid. Various types of errors *MUST* be introduced in varying portions of the key agreement process that the IUT *MUST* be able to detect and report on. - === Test Coverage The tests described in this document have the intention of ensuring an implementation is conformant to <>. diff --git a/src/kas/sp800-56c/onestepnocounter/sections/06-test-vectors.adoc b/src/kas/sp800-56c/onestepnocounter/sections/06-test-vectors.adoc index 25bba5428..4faac4dea 100644 --- a/src/kas/sp800-56c/onestepnocounter/sections/06-test-vectors.adoc +++ b/src/kas/sp800-56c/onestepnocounter/sections/06-test-vectors.adoc @@ -161,76 +161,6 @@ The following is a example JSON object for KDA oneStepNoCounter test vectors sen "fixedInfoEncoding": "concatenation", "auxFunction": "KMAC-128" } - }, - { - "tgId": 56, - "testType": "VAL", - "tests": [ - { - "tcId": 276, - "kdfParameter": { - "kdfType": "oneStepNoCounter", - "salt": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "t": "923900078F6BC4FDC56E5455D27A1E4F", - "z": "8FAC52430C78858C06306EFAF1749C589A3D96B3A676D9553BC433EF", - "l": 256 - }, - "fixedInfoPartyU": { - "partyId": "BF1FD4A8751D00541ABDB52BE0E6E17E", - "ephemeralData": "50F99C59DEA36E5CB0D128E72D02F7B7BB690632CF99957A4F616CD4" - }, - "fixedInfoPartyV": { - "partyId": "AEF9114C4C033F4AE66FF4B966B85EBA", - "ephemeralData": "24A7E21C88C301034ED414489BDDF582C865BB0E4DABC0481A089C5F" - }, - "dkm": "925A34BB3627FEB1C8999F37733D2F60125C9044DC33419BDC094FE201FEE498" - }, - { - "tcId": 277, - "kdfParameter": { - "kdfType": "oneStepNoCounter", - "salt": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "t": "4A0D00323660B72A1102BEDF4A5387D1", - "z": "7EAFA88B393B13C02BC01962940EDAEBA77F77CCF224F99541A7DE3F", - "l": 256 - }, - "fixedInfoPartyU": { - "partyId": "91F3D37CA74683679F234B4E3CA6773F" - }, - "fixedInfoPartyV": { - "partyId": "1BF9949279A59BA5B16D3C2C25E2CC1E" - }, - "dkm": "BB7F921AB9F5DFDAE8BEB573BFACC535A5C2AFF953FE6B22F5720D29533BFFEC" - }, - { - "tcId": 278, - "kdfParameter": { - "kdfType": "oneStepNoCounter", - "salt": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "t": "1309E81CDA66BA615A7290060EEB471B", - "z": "58B3C24FDF4A29B86F43486ED3AC99631CA38ADBF886E08BCDE546DF", - "l": 256 - }, - "fixedInfoPartyU": { - "partyId": "7B32F2C03BCF644CC1350A9D2DEB837B", - "ephemeralData": "780A86EB63597F769F587D2E2CC87D06FCB55A99A5D46B920DC8F655" - }, - "fixedInfoPartyV": { - "partyId": "B003871617E84AEBCBF9F2CFF6C6AF08", - "ephemeralData": "94E440FC83142DBE94EA9D5B610C22649DD676DCDA75910E06E646C5" - }, - "dkm": "BD8D9CA80D431CF95DCFFF0BEC3BB7DE47700EAC91E3FE2E9706B520A03042FB" - } - ], - "kdfConfiguration": { - "kdfType": "oneStepNoCounter", - "l": 256, - "saltLen": 1312, - "saltMethod": "default", - "fixedInfoPattern": "t||uPartyInfo||vPartyInfo||l", - "fixedInfoEncoding": "concatenation", - "auxFunction": "KMAC-128" - } } ] } diff --git a/src/kas/sp800-56c/onestepnocounter/sections/07-responses.adoc b/src/kas/sp800-56c/onestepnocounter/sections/07-responses.adoc index 9971e7213..477fc90f3 100644 --- a/src/kas/sp800-56c/onestepnocounter/sections/07-responses.adoc +++ b/src/kas/sp800-56c/onestepnocounter/sections/07-responses.adoc @@ -31,7 +31,6 @@ The following table describes the JSON object that represents a test case respon | JSON Property | Description | JSON Type | tcId | The test case identifier | integer -| testPassed | Was the provided `dkm` valid? Only valid for the "VAL" test type. | boolean | dkm | The derived keying material. Provided by the IUT for "AFT" test type test cases. For single expansion tests. | hex | dkms | The derived keying materials. Provided by the IUT for "AFT" test type test cases. For multi expansion groups. | array of hex diff --git a/src/kas/sp800-56c/twostep/sections/04-testtypes.adoc b/src/kas/sp800-56c/twostep/sections/04-testtypes.adoc index 7503d6e51..a509dd4fa 100644 --- a/src/kas/sp800-56c/twostep/sections/04-testtypes.adoc +++ b/src/kas/sp800-56c/twostep/sections/04-testtypes.adoc @@ -10,8 +10,6 @@ There are two test types for KDA testing: * "AFT" - Algorithm Function Test. In the AFT test mode, the IUT *SHALL* act as a party in the Key Agreement with the ACVP server. The server *SHALL* generate and provide all necessary information for the IUT to perform a successful key agreement; both the server and IUT *MAY* act as party U/V. -* "VAL" - Validation Test. In the VAL test mode, The ACVP server *MUST* generate a complete (from both party U and party V's perspectives) key agreement, and expects the IUT to be able to determine if that agreement is valid. Various types of errors *MUST* be introduced in varying portions of the key agreement process that the IUT *MUST* be able to detect and report on. - === Test Coverage The tests described in this document have the intention of ensuring an implementation is conformant to <> and <>. diff --git a/src/kas/sp800-56c/twostep/sections/06-test-vectors.adoc b/src/kas/sp800-56c/twostep/sections/06-test-vectors.adoc index 30827b466..46847d12e 100644 --- a/src/kas/sp800-56c/twostep/sections/06-test-vectors.adoc +++ b/src/kas/sp800-56c/twostep/sections/06-test-vectors.adoc @@ -66,7 +66,6 @@ Each test group contains an array of one or more test cases. Each test case is a | JSON Value | Description | JSON Type | tcId | Numeric identifier for the test case, unique across the entire vector set. | integer -|dkm | Derived keying material value for VAL tests. | hex | kdfParameter | Object representing inputs into the KDA for single expansion tests. | See <>. | fixedInfoPartyU | Fixed information specific to party U for single expansion tests. | See <>. | fixedInfoPartyV | Fixed information specific to party V for single expansion tests. | See <>. @@ -216,82 +215,6 @@ The following is a example JSON object for KAS-FFC test vectors sent from the AC } } ] - }, - { - "tgId": 33, - "testType": "VAL", - "kdfConfiguration": { - "kdfType": "twoStep", - "l": 512, - "saltLen": 1024, - "saltMethod": "random", - "fixedInfoPattern": "uPartyInfo||vPartyInfo||l", - "fixedInfoEncoding": "concatenation", - "kdfMode": "feedback", - "macMode": "HMAC-SHA2-512", - "counterLocation": "after fixed data", - "counterLen": 32, - "ivLen": 512 - }, - "zLength": 256, - "tests": [ - { - "tcId": 206, - "kdfParameter": { - "kdfType": "twoStep", - "salt": "227C2578D2B5F8ECFD034DD43C60146BFA568DC70A482AE8FDBD7AA138B24B9F2A5F0566D124FF434E250F256C038449183189C8BCC67727E3F79DD1F846110C29B9D8C1AA2C9D831E498D82700DDF9B8F73E74ABF75590321AF926EA81D8CDCA87F334B9E14BC007C483E15CA99D7756545EF8523B98C5D0576D5662C19CC5C", - "z": "CDC603A4A6E5FDA8830236C1C6377A7E3F8786AC12B5F205CF455C27A04DC180", - "l": 512, - "iv": "DB0ACEAC2034CA45F57D2AC04F29FE71D23608CACF76919C7224D9702BF226ADC285EBC4A84CB547525623A4526529A8B6871AC6FB8305C6CF77F8D67C1C9B18" - }, - "fixedInfoPartyU": { - "partyId": "BE486A74CE495AB914AA96BB094F9B87" - }, - "fixedInfoPartyV": { - "partyId": "2B012A9E7629F7C9BF4919449731A1F5", - "ephemeralData": "482F1A9E809FF14A058142369562AF6426B53D0E33EC670C22D0E8837E37118B" - }, - "dkm": "9ED06EEEFFC01C0C594EB54775A7A05405F3F7DC6159686790F1E60C07CE2840F2B671F6F16E32FE52E587C24A3EC5E0ABFB4031457C34972D6DB3CD4E24257B" - }, - { - "tcId": 207, - "kdfParameter": { - "kdfType": "twoStep", - "salt": "61AFC626DC9F962040BFD74C9B37E06171AA633D3F8AB3B5860417935DE9744C7FBE60E0D2506F2896EA5B99D4558C768CFFE5AEFD2E8DC18F98764BC72C0A9B58ACA128AE6C615758606CCC4C434EFC50DEC06884CDF821E70F4C33A7C78902B7A7DC2252DD554C686A7BF64F74D1DCCC1E13502FC24335CEF30504B8CAC1D4", - "z": "414840092D47D2F3BC58388653745F904B9A5C35C3B35E82AB31E67C4DA0A1EF", - "l": 512, - "iv": "60E7FB6453843B7BAC39B0564717DA3D746FD8B87D13D8E7BF7570B28E702903EE5F2778FD3DA8B575332228FF70DEC4C559ABD0E61ECE885FF8A2FC39B0AECE" - }, - "fixedInfoPartyU": { - "partyId": "C59DE998A6DEC3C7723AC7F5880EB2F1", - "ephemeralData": "2706BAF2394BD64D8E71E633A75C5F2B5446679CB676B78F975650493B9B1AA8" - }, - "fixedInfoPartyV": { - "partyId": "5C2BBBC31065F1B761A7B1C00744F74E", - "ephemeralData": "AB91CB608042EFFAB77A943F23A4684FB0D5A51D0572ED0CA9C14B1D41896D51" - }, - "dkm": "3706FD4B6450BB15120302B94E16FE695C73488DE711CCE08EC42CDB183660F711EBC6F5B354649578D8C8BA68BEDD778231802C8171A5EDBA0604B8EFC90765" - }, - { - "tcId": 208, - "kdfParameter": { - "kdfType": "twoStep", - "salt": "A8F37D9FF52F34C48C83E8985CDCE150C6DCEB24201F96E59AD15D8A3F61F29F0D3688E623A7BBA5BDC9578178A15B7FB31CEE59CAEF3C30D9A047B0D4F18EE3046139B85C956DB436B5145C507085E282327CCD45F70046EEE47B905CF15AD126A7F1FE83DDB130EA3351CA362A155530A3A22FC3B48AF65FBC950EC557E787", - "z": "E711827E4CD5EE79B3BC3EC6B7BA5E80D762E306F04B5EA869F9568DC0472B0A", - "l": 512, - "iv": "ADF3D162B6F6736C2CFDEFABBD15769B1C54985491D2BBB9733975C0411A76A267FBDC2D567AD56FB775D9AB04D2E1DFB998A837EA9306892128DC8C662BE205" - }, - "fixedInfoPartyU": { - "partyId": "89260CA34C15AC7C448E9450298725C7", - "ephemeralData": "C86C106F281A3A76CFEC87395CE128644C25EBAD819F46946ECCE63C1704361F" - }, - "fixedInfoPartyV": { - "partyId": "C0CFC2EF4DBCBABA3E8BD00C4C5F3A4B", - "ephemeralData": "6AB3DF9FCB7EA1A29D9440D98B7236D6D983FFA3CC01A0354997D82D44E43F00" - }, - "dkm": "BF0E3773C61D51EF30742BEF784E29F7B60C85192DF381FCD597166A8DA7EF2BC7DB6A3AD6415A26DEAC9D98D42073E09E87455F0B0FDA0130A5F0AB0EF25EB7" - } - ] } ] } @@ -443,154 +366,7 @@ The following is a example JSON object for KAS-FFC test vectors sent from the AC } } ] - }, - { - "tgId": 65, - "testType": "VAL", - "kdfConfiguration": { - "kdfType": "twoStep", - "l": 512, - "saltLen": 1024, - "saltMethod": "random", - "fixedInfoPattern": "uPartyInfo||vPartyInfo||l", - "fixedInfoEncoding": "concatenation", - "kdfMode": "feedback", - "macMode": "HMAC-SHA2-512", - "counterLocation": "after fixed data", - "counterLen": 32, - "ivLen": 512 - }, - "zLength": 232, - "usesHybridSharedSecret": true, - "auxSharedSecretLen": 144, - "multiExpansion": false, - "tests": [ - { - "tcId": 411, - "kdfParameter": { - "kdfType": "twoStep", - "salt": "6EF94F801BFEE61DD2B464EF175C333AA60780B770734A09D4260E3ACE142D15A0415B0DDBFBFEE0FB66CCD7AE3A71CE23365F4D95486FC9072A7B1ADFE2839E8B1229892A5671065515FFDF3D51345040ED1C52B2B927CACA85644C0153F5FB460928E28AB1BC40891206BC123A4F6C777D6DD4DDC9A8B4F5B43AE697FA185B", - "z": "42301A3E95310A29E571B18AC752F1285D6291CDFB0D5F33B3523CEA11", - "t": "A60D8DE12F173F6E7327EAD4788BEDB41C50", - "l": 512, - "iv": "40AE95B609A5CFF5046F1EAF2A259EA2277A27BF89CC9C49D25AE80010420550BA540A1054B14179B0B129FFDAA055F65F43F5588DA4654BBFE9674B1F80A72D" - }, - "fixedInfoPartyU": { - "partyId": "CA2E1874BD0AE0E75B3DE32B4253DECD" - }, - "fixedInfoPartyV": { - "partyId": "88A429FACD3242169F671CAFD174DCB0", - "ephemeralData": "8D0BA014A2EBC11DD599B130854C1056FF6AE0F49030B0D0F10EEF524D" - }, - "dkm": "DEEEAFD041674947C1FE3D794346E412C3A5AE6F7D6F300875C316342F3FC6B0DDB5F4016E2968FF443A70A79AE5CA5E8063313E908B2AF566E1284D5820F718" - }, - { - "tcId": 412, - "kdfParameter": { - "kdfType": "twoStep", - "salt": "FE39D0278B7C1501563CB4BB960F55A72BAB0709D1E241556A16F461270763B39BFEB0D376274A57F0E53D79606DBC47B1F49A137EFE1EAF0C464ED6D306E693B615295357079BC5BF8508F0914E9BB9EDC8680E9A19C9C45107DA12EC0ADDF9D5CEC8FC27A9101A03352D48C370B6E7583BE0B1FFBC627E1250FD67219FFBEC", - "z": "727021F7854B84169D4C1D39B421552776E477F464A3144163772F85C0", - "t": "4279450CC64917ED8884D523F7D4E10233B3", - "l": 512, - "iv": "1BDA03A6E389CB84B95DBC012BEC2B2EECFB05A9B8F0BC06DA97FB3CA5B0E30885428A784C26B026FEDF67A17DCFFC9F50E6145A370B03A6524FCD93AFCA6320" - }, - "fixedInfoPartyU": { - "partyId": "30A31F6CF2E301A97E8EE66C2F67765C" - }, - "fixedInfoPartyV": { - "partyId": "0C06785053342FB1304B312FA20274C1" - }, - "dkm": "F05325B0EE208E1975EFEDDCEBA86763AD14337156F7574C740FEC8BEBAE67ABC4615FFBEB6EF46465BC82A820984C1F2D0373649BDDD68233BB93196AE28808" - } - ] - }, - { - "tgId": 66, - "testType": "VAL", - "zLength": 232, - "usesHybridSharedSecret": true, - "auxSharedSecretLen": 144, - "multiExpansion": true, - "kdfMultiExpansionConfiguration": { - "kdfType": "twoStep", - "l": 512, - "saltLen": 1024, - "saltMethod": "random", - "kdfMode": "feedback", - "macMode": "HMAC-SHA2-512", - "counterLocation": "after fixed data", - "counterLen": 32, - "ivLen": 512 - }, - "tests": [ - { - "tcId": 416, - "kdfMultiExpansionParameter": { - "kdfType": "twoStep", - "kdfMode": "feedback", - "macMode": "HMAC-SHA2-512", - "counterLocation": "after fixed data", - "counterLen": 32, - "salt": "857922073668DECC47627AC83F249976D55329D03449A430D8245E1CCEA2CB36622E755C8591E32F411822B84F543CEB00287E753098E6FBD5A8991A9820E46A1BCA1C7B10999F54C859691A447AD8713EF63CB30CE6017EA986F524E5AC88AB32673227C57AE23DDC8B5C31179081CBCC7FC621CB17D14DF2E1F6F2D77BDF25", - "iv": "2997A65781403D9BC933B6134BA6616DE96E4D5B4C2797B41CF8A92F9A7CC42A0DD0EDF63D025A69BB9AEE51C30EBC900671E3D9141F7B178DE459DCA9F936B8", - "z": "A82287BF8A9681596448A0FD000EC57669F2FEB39074F9854794CF18EC", - "t": "7DE4D8B484751926E202D63E9525DC4D0179", - "iterationParameters": [ - { - "l": 512, - "fixedInfo": "79CCA0C5D1132CDE2D78CDB57FFA46A7" - }, - { - "l": 512, - "fixedInfo": "8A81ABC645A5F0041708CBDD34F360A0" - } - ] - }, - "dkms": [ - "868A9AA69829DCE0F540151DC708A7C7E9856A9AB317C67FDE5314AEE5C3DB62091CDFC593D4AAD2C941A765D26ACD6708819B06E28223345AD4B0E0DECAA2B9", - "869EC40463921F1665FDBABD154D646BCCD469CD36F7175131FA7B96A8311C68B062785327932964AD4A044CABB04782B0399000B9F762D345B36003E7CFF6C4" - ] - }, - { - "tcId": 417, - "kdfMultiExpansionParameter": { - "kdfType": "twoStep", - "kdfMode": "feedback", - "macMode": "HMAC-SHA2-512", - "counterLocation": "after fixed data", - "counterLen": 32, - "salt": "C3E26AE71C46D92EDDA5BFB29A1498F8F2395490F62966420EF4F6C41D7043C493F1D66D23AC0D08AEE09194A232117F94FF66751F1BD29A4F8E94294E880F6E3A62E4AC932DF759AE73ABC9C3B6D1A31D444C2DDE7D26789D699A1B06BB7B5AAA544B73D52FC3E02C45F346937003EAAA9BE5CAE2BAC385D6BADC570E249FA1", - "iv": "45D9E5F1639357A68A010D3F2D4892BB4475775F8E7C8AC817FC07F808156584D726D8AFEBEF929E04E056C1D42BB9D3B41EEA682E60231D89D0E1F6325B87E1", - "z": "9AE68C81F52EDD5207EF0DD998746D881346893AAB59CDC0A28528EF25", - "t": "A1752B0C9A12E4930E45D93B4A22BDF225D3", - "iterationParameters": [ - { - "l": 512, - "fixedInfo": "CD0F291D388697FD04248B34647E460E" - }, - { - "l": 512, - "fixedInfo": "E7F643C5EAC493E94043FF7B9EDF72C5" - }, - { - "l": 512, - "fixedInfo": "C0A83FA55D3599E41BECEF1333D20F14" - }, - { - "l": 512, - "fixedInfo": "B93E3AC7A17B3E030E2EE7A203FD3279" - } - ] - }, - "dkms": [ - "52C3E181D4BEBECB0042FDFD2635AF472578ED4A0E78C5C6E3DDDB36259B81AD37AC808386BD3651670CF6BBA55162013262B495688C2E6EA26BB43EC6A65A90", - "E9A7881EF4F28254134F643CF39BCD469A66B4CB4C4768E51786FBC1531BD33E3BBAD16AE11791E78760A1DED6F543F31CDEB5059251E8D6E0F8F3290C6A867B", - "B71F7A1A1DBDBF234D660FA5CCEFC9945BB83DFBB08D5BB8FA6BED49F5E706A8E76B851D041D95D3FBE2D7A1C6AE4F87BC301A38B024F94E394A81D59FDCBE59", - "5255F56AB61AE53F98A55AE8183B7315DDD70288F58A090A68BCDC983D0B452B9A241D2E579FC15A13E532CFAB0522DB7D05EE33E2E48E339C4F6578C5EC55CB" - ] - } - ] - } + } ] } ---- diff --git a/src/kas/sp800-56c/twostep/sections/07-responses.adoc b/src/kas/sp800-56c/twostep/sections/07-responses.adoc index 8c4b25f4a..6c35c56b7 100644 --- a/src/kas/sp800-56c/twostep/sections/07-responses.adoc +++ b/src/kas/sp800-56c/twostep/sections/07-responses.adoc @@ -31,7 +31,6 @@ The following table describes the JSON object that represents a test case respon | JSON Property | Description | JSON Type | tcId | The test case identifier | integer -| testPassed | Was the provided `dkm` valid? Only valid for the "VAL" test type. | boolean | dkm | The derived keying material. Provided by the IUT for "AFT" test type test cases. | hex | dkms | The derived keying materials. Provided by the IUT for "AFT" test type test cases. For multi expansion groups. | array of hex