{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-04-26T00:14:02.000Z","description":"Problems submitted by members of the MATLAB Central community.","is_default":true,"created_by":161519,"badge_id":null,"featured":false,"trending":false,"solution_count_in_trending_period":0,"trending_last_calculated":"2026-04-26T00:00:00.000Z","image_id":null,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":null,"description_html":null,"published_at":null},"problems":[{"id":61302,"title":"Decode an Encrypted AES image using CTR (counter mode) with no padding","description":"Given an encoded AES image using CTR mode with no padding, the Initialization Vector (IV) (32 byte in uint8), and the AESkey (256bit hexadecimal), output the decoded image (uint8 matrix).","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(33, 33, 33); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 42px; display: block; min-width: 0px; padding-block-start: 0px; padding-inline-start: 2px; padding-left: 2px; padding-top: 0px; perspective-origin: 468.5px 21px; transform-origin: 468.5px 21px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 444.5px 21px; text-align: left; transform-origin: 444.5px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eGiven an encoded AES image using CTR mode with no padding, the Initialization Vector (IV) (32 byte in uint8), and the AESkey (256bit hexadecimal), output the decoded image (uint8 matrix).\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function image = decodeAESimage(encodedImage,AESkey,iv)\r\nimage = encodedImage;\r\nend","test_suite":"%%\r\ndropboxLink = 'https://www.dropbox.com/scl/fi/qf6yvfr6hg0gqw7xuq340/encryptedImage.png?rlkey=5v7l1iu1w841v47q5eriqxl5v\u0026dl=1';\r\nwebsave('image.jpg', dropboxLink);\r\nimage=imread('image.jpg');\r\nAESkey ='F78CF9B6B237F901406FC732DCFB299802620BF46FF2C9DD2C13992BBB6887F0';\r\niv=uint8([133,27,40,139,134,163,102,166,101,159,196,45,96,128,175,64]);\r\nI=decodeAESimage(image,AESkey,iv);\r\nimshow(I);\r\nx ='2A3C342C487D1D334348373A582846756745584B552E212B3F2F3DBD4F3F3B3A9D4D8295895838393F323B354760374D74343531385B73A21E378B3F333A43876A4B24473B60422C4F34348BB6354A364983336341937F6F836740BE383A38944A2D3C54';\r\nrng(sqrt(23));\r\ny=I(:)';\r\ny=y(randperm(length(y),100));\r\ny=dec2hex(y)';\r\ny=y(:)';\r\nassert(isequal(x,y));\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":145982,"edited_at":"2026-04-24T23:09:49.000Z","deleted_by":null,"deleted_at":null,"solvers_count":1,"test_suite_updated_at":"2026-04-24T23:09:49.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2026-04-24T22:59:28.000Z","updated_at":"2026-04-24T23:09:49.000Z","published_at":"2026-04-24T22:59:27.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven an encoded AES image using CTR mode with no padding, the Initialization Vector (IV) (32 byte in uint8), and the AESkey (256bit hexadecimal), output the decoded image (uint8 matrix).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":61301,"title":"Decode Message using AES with Cipher Block Chaining (CBC) and PKCS#5 padding","description":"Provided an encrypted message using AES CBC mode with PKCS#5 padding, an encrypted AES key in the form of an audio .wav file that is first encoded using RSA with Optimal Asymmetric Encryption Padding (OAEP) using SHA-256 hashing and MGF-1 padding and then encoded to an audio file using Bell202 encoding at 200 bits/sec, and an RSA private key, output the decoded message. The 32 byte AES IV has been placed as the first 32 bytes of the encrypted message.","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(33, 33, 33); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 84px; display: block; min-width: 0px; padding-block-start: 0px; padding-inline-start: 2px; padding-left: 2px; padding-top: 0px; perspective-origin: 468.5px 42px; transform-origin: 468.5px 42px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 444.5px 42px; text-align: left; transform-origin: 444.5px 42px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eProvided an encrypted message using AES CBC mode with PKCS#5 padding, an encrypted AES key in the form of an audio .wav file that is first encoded using RSA with Optimal Asymmetric Encryption Padding (OAEP) using SHA-256 hashing and MGF-1 padding and then encoded to an audio file using Bell202 encoding at 200 bits/sec, and an RSA private key, output the decoded message. The 32 byte AES IV has been placed as the first 32 bytes of the encrypted message.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function message = decodeMessage(RSAprivateKey,encodedAESmessage)\r\nAESencodedBell202=audioread(\"AESkey.wav\");\r\ndecodedMessage=AESdecode(encodedAESmessage,decodedAESkey(decodedAESbell202Key(AESencodedBell202,RSAprivateKey)));\r\nend","test_suite":"%%\r\ndropBoxlink='https://www.dropbox.com/scl/fi/ydamntz61tzox495uh9yl/AESkey.wav?rlkey=5rfuq2m291sul7pojbweyl678\u0026dl=1';\r\nwebsave('AESkey.wav', dropBoxlink);\r\nencodedMessage ='9506A9637F6A598DF91C500ABDA8366AE80EDDA429206C53724BE096846DC31DAC1F69164A90988E8BE92BCFE84704AD30553326DD2B0895BB00706B167C7CDB38BAB3662DC3EB16E3EE7868AF63C5A40B236DABB9229A45E174941636588147B34CBCE65BC65E3A98ABC10FD4460C48DDB766F31F2D7625456A0850C356647B99D3DC88051C3B0E8EB3FD5EB942930EE67EFAE60428193A6F2DCDD382F25C4A57A936FD045591E02D3F56371519D5E65EB8D9952C82E969A9BDCD531614D119E67DAAD12DE3D3F2DF85B482B07ABC4A867CF99F0774E1770D7C32D3EFA001BB796DDB958CEF1ECE86A7D0ABAE78B39396E0B7FCB37878CB6FA419A25A131FB2D1CA4C2F21A1E395071A3BB2FEEE4740468C785C04B540CB4CF54EAC5BB4A09A4D51AB5E0657D4A8C865FD101FF8671D5B9D703CD8410BACCBA3F11C5018325BA598AAD6E734CC54C2813B6A22DE596C3E46FB698E4DD4F59EF0BEB0BB26967612BD40C9807B6161E713E91105B6A6F15C99E09B673C53F5C2640E1EA38C6D6247E7DFB2621AC727C7185F43CFBF368CD2E554A580AF484F4BEE371566D7305860E22EC18310D0572869AB4C0F76DB732A1C9315D8D00DF9AB2B102B44783D559DF66C2661BF58BEA07B0D2A243F5087F75A2F8C90B1115E0C3399E26B41C8D37A3F049EC24153F2E9D9178B5E42C6DD738EEEE15E487BE3B80B3DC91FB8EE66E0E6D4F4D579B0A8ABE2F7C6B0C3C08F060CCDDA926B9229815EE9394453EB77083220C9A6928254A2A07605B297E1F7A6F64D4589A7FB3839EEFCE277EB1792D36ED89DC6E6C91DF746DBDD3C46B88AE72745D1FDD88F02855F04B9C8889DCCF984240E73C652930D021FA72E351DCE4A41B67EBB0143DAF25FD85741D35D70AAAE4193C3A9E8A0F752E1BD95A27414D9D628D21A0F4A88D421B3CDDE9CE7EE2E9F8C5DFC1C7C2E6201BD9292412E7ED5317A3C145EB30CB69304A27654EC7EB855014DDED71FBE628A9CD5013F84D41D5ADABA46C1B21FAB5812E8327F8EEAF711D07D3393C04941D8F6C169D7518F19CD5079CF9385A6939A602968856BC09B1E0CEC33F0091CCDD0FDF266C9293936D04F66821504F9F6E4A78073BE69C19307D3027774BC7515CF512B2D69E6F9D19117DD421615554400B0E2AC382ABB78CC2DF00E361390CFCF67AB80CBE2A611507A1255B1E36A33598E3433D172C8535D67CAD98720FD0483069E23F80C18';\r\nRSAprivateKey ='308204bd020100300d06092a864886f70d0101010500048204a7308204a30201000282010100c22c77c24cb26c8d736a9dd2936f8ba12e9732ce8924bfbd043854b57373407f6bdc30a5cb6d9e0aa6570121b2412ba0f3bb5fefa28de31f0e74fdd7855065bb9070fafbb754f8cea41f34b0a225550272ae35d7aebc39b3c08e945dd25f7f03ce39013b91184a06477fce13814afccee4f703464ba96311efa520fc3b8d44d665aad79a1f1237543818a01f00c6e540d5a3072684f6251aee1ee8ef6b788a37ec67a198e8b5b80392781ed5ab579f9c9f5f40cf9768cefef484ac40f271a5d954e0f46f0882e167d124e3ac8cc1edb57388c9fdab409829fc207c9040bc9debb1e741ab7d592e016b7f4817fed1ada5f90c5ffe83cae460bb6a5388b308877d02030100010282010045d253a60c8a443a80fc1f902eeff75798374a4fb644fea56b350e50c918f2625f58a82d95feeecb8990d399584dd2f0677443451a40c720cdc407db4dd6e11e170c6953c652c9bd148b1c193fd508c27e96624a124d20baa04d24d0afeb22f32d5e9630e335c6b887514fbaf7cd0d2720722a3d46cbbc12210851da2157e51e4ab55dc779121e31c33715588aacab2598184db78fca1bfe83999f345e12dcc47ffd4175b9a7ff7ab0f02f2aad70a23c8ef2e9145b32d7653c369b185f65fa333f4c336b8833d4b3a60a57f2b83a86b2325b7b83819ec11f1da623c82c6acbc801fd584b7f80d55462ef99753332fb07b2ccf53cca708c05e19ef73177af058102818100e69b937529da3ed5edb39eb16692617fd7f521ebceb4a9e838490ff53731e19cf5aaafcc06945b42d2041597fd4cb7877d979f6b70d54565d633fa777ab469e653757d0f9b0c65fa8c158c78b1fdbefb008c038380bdc3b26815572030515b381d58909429d4e8a1082b38b50e6776d715664f13effa1d74359605d9735dc74d02818100d78de19b5b4567cc4b4c40d9dd26f59e3cbad8a6bd7363827e4d39711e9f932b2179e74630bd207fa7ce64f01c551558d6f5e29f0c24ec418b56ce9b671d6615b530412b33ad91eb4ba49f2062cd67f81333336c66ab098090882fd1c9578d7f015e8b1ac2dc24fdbf8349e2f15e6f9d6615f4a73ac9e812cee837b163db88f10281800ce9ed6a043bfa84d458d8ac2a884bf972c8816bc91988e23e34a9361c2f28e93740a5b39132c1a18e4d384058a8f1261f3c5c6b11d87f9862546ad44204d461578f1ebfbef904c4f10f4bdc7e6b2d44b51522253d1263611c3f05b001c4ac8d09e7a9c1024eaff0449ad7041c9862a94cc37bee2be41fbe203a147dc6de1b8902818076811c2d4b0a673c5b913a7e0c2565176f8fd19829c38c4baba04d1a3199cd5103007ff388cc1157dd2b8d36ac7ce2558b287744b56a7f30b1a831c221f879ad2985b3ee4a64fc39fdc62d6da2a406aacdf3722c006dbbb5a0c01e7a1955370741fb76426a2a99739f9c503ca23226eec3b7026005e406e0803c0e9249b1e221028181008997dbe423e5aec33f16639360e242e4d6868f9cee9ea44d5937231406199797909dda0b9018742110915bdb5187108c781e3ee59c97c55f6248ddd496651f5b18f28b2cab33fa6fde940b42fbaa9c76904f736660117221d4e36a29dcdcce6505a79519b8617f3d005e13c2d49e88bfd4e054d8f18c27ad2999e04e7ee378fc';\r\nmessage=decodeMessage(RSAprivateKey, encodedMessage);\r\nm='tlastadBgatnnei,oegatnagdadhe ';\r\nrng(pi);\r\nassert(isequal(m,message(randperm(length(message),30))));\r\n%%\r\ndropBoxlink='https://www.dropbox.com/scl/fi/7meklids63pl4cwzwvpz1/AESkey1.wav?rlkey=qe7rmqfxb0ywx3r005x14nm00\u0026dl=1';\r\nwebsave('AESkey.wav', dropBoxlink);\r\nencodedMessage ='579253710F3EF83BB1A6B979981112326F3F1024D517C5E282E844B6B800402B13E67E9632108432A8C4D7202A1B4DED9022585443D67646A709905C70089A3DD98B5429BF3E746CD180EB8C521204F6AE23A9D4834D65C3C3C6B23449747ED405738305E95174353F8B483DB13DE71B0E473EB793A31A540203BE969CD9E7171F5EF09B6A7A02EE75AC720155D66BAB1F2D567C7E0AC280F93193CE5F731E25C9A02F1E315B3FD1A156BB0BCC5820C5EBB6F300B73691E9107F60BC0DDAD7F63A377B21835C7E7F98E15B24001336C23DA4D4CF51FB9454EC8904D9F9F802E1D60B462A21CCF335C625521C851EB2927EE100D4CE1D3599CE2F16B89C7FEDE9631F1991D26562342C42881B0AB694A26CE0C3064DDB98ACD0650458A84129CAD125E94B76D374A416068AB0F6CE7845D56378FC45B8025E3DB7C588013FE891432B1E60A81D2626B1CF150AFF1F645D5CC477ED496AB2D6FE9FFB292A2ABE1B17EE73C0E81AD1B764953418A0F49D09561DE337B990309108CF0F28A41E07A748E381C588A1B9103F70BBB3ED240583BA0B295106BEB9C3C5FD396B593E22C9BF86451CC3BA7FCEC73B214749483B67407DE4A6B8605F381118AA3D6859E59DF3988C5B1492A84A15A80847679EE64ACE2C650B6D7700F0D7D20F4CE6370263673349F9DCE372444F77CB384D348724B436D5AF2FEE5E7564684EA2CFC56CA786E34B98BEC030418AACFE54A5595C9F6491286C6060227939427E7341C209233C465AFA0504AD8BE57271A2A9F0C5CD127A861E4289642F9AD6C67E7A4B362EDB427AB493C4CC80E26F6A3EBC42ECBD0E329BC2CC45C0E433127A4A59B9FC430DC00F9A24E78DE77B2538EF6B29EF951073FCB3D90BC5FC6AA7E644895727EC8B2C0419D1148BB8CD28122A751940AF97D1D0B3378F6F3A818F7EF4B391E5E294A707ABEE6F265734EA94550F1C79251E5281BDC088C12F31230CEE145305C801D994EB632B2DF77CF69B4A2E3192DD14651DCA5FCAE2DA57764EC045AF5D6D';\r\nRSAprivateKey ='308204be020100300d06092a864886f70d0101010500048204a8308204a40201000282010100c3edfd3ba83e2876d3b0225edb9a11cbbe2b635447fba6095b7752bc4a46a4993dce739c559ebfe70f6bf51960722233b17853d15d3f5ca4e702ce24b19b0f077c0e727109d88435938dd76ed8456efc7edb29fed063324d6859b60c8254a72259bee5edb2bd82deb1d072fb63955c630db760c5e5e8a275b7a5b9b953def34d9400036eba13ab3924b06ace096ac505ce7a4355f87d5a50d4bc261e513575d4ee150829f39278560291f64e5aca84c6d40fbbfb0cc46a1848b807403e754d6098111f97015e3e2e2de11ee7aadb0a59175623f8ae6a92943055aea20d814cdd64f057e5d5bca151e864774cc38f25ffab25e1cc2e24290b044b1ee3f12d43a902030100010282010100c109243af7aaae014cd53737d012bebfc6d0469fcdfff0793da5955d2face4149ae161e44033150d18939bbaf1dbe1389efc57506a17b8363be7f6a40e5c1ff596d3410b7fd0d38959a42101f3908d25b5f24630e8ad22ed4307482690edc8713e8ca74a8694d270882e406acf95639daff0e126793ab77d557fb139179a0c88c124244d4d2a1f1e144fbfbad710accbc8f39e79277e5844fa94674871b6061771d70c961d9db04b2d248416a75e18ab14c0262c8501168d86c2909192184253f5f2e9f921ffdc90165b599c492770d488eb68966923a00bf8bd7d39e813d904c4f40a0a16870c1b7874116c27d3e6f5f678e78b04698bc031677418e3a0f8d102818100fb84b4232fc7c9ffce2c5a14fce1222c6bd0d873e1e40401c654a5a30e09651f370077583e1afaf1abf4d2d626120bf2c599dfb404fc7678b435684a6a792233a1a6df726cb64622830b8195631bc3f3dbd9040d3f97defe8d685a7dacdfa70f5d4a965fd15cc090745d203dc2425a300ed3e40c8611d38973754f99bddc5bb502818100c76bb7f572a10eafddcf49d3275965c63989ac8d5e9ee3841effcdeaeaf04f304001488e95b6be6a15e2f2efb5abcff90dcb1c5f78edbdcfb2f58bbe19d221f7f6f262721b876f984c1f6b2314b1b425d43e2fac1dee1ae9575247803b4ad9d8ff19a958901c93e7a4b9bf15b96e4370a0186220e7742ff8092ec1c5cc7688a502818100bce3a26d327af686f80d72f18420878b98c4d569e1e15de8ff4b9ec15fcf4a7430d856c89c8ba29e50a7a297552c0471245935197b0d26e3eb62989a1a703271581b7c7ff088cb0f2c1f3e0834d02b4f3e72328ac89183d4e3d9d4ebc1228dd20a1bf3e6add2dc832000b82fe96def515c316178ce4f20f07f1740da932da4690281804656cc501ada8c1fa411156d11180b39dbd99faf4d8ca59b5883c9d1ee844caa2c2947ba633c4df5853ac38da17ab4a49824e82114ba6694f7fe7c07d57bb4d78d96f8fa5e936add411c63e1bfcede47e990f5a7b3f6e42f21c9b7c6972353aba26f1eb84a3c8a3ece6f65e2f7c0d8b0c50754b55e6e30ed3fefea11268938b1028180597ad1f69b8b587207ececc77bab890a73a1a5bfdf0cab3499615b7442220e474e799088883d884afb4a70964c3ef4c4438f4801af85874c0d40d43b7f00789c3c79b10b7023ec7477ef1238e4234569b054100e9256c934efef6f498ee258eb6e180a35e83ad6d3d583147d9910725abf39e388d65f97d502f7792683fd2482';\r\nmessage=decodeMessage(RSAprivateKey, encodedMessage);\r\nm='gs,i     n,asolv  nlh r srenb.t , ihi d,dioyleleno';\r\nrng(exp(1));\r\nassert(isequal(m,message(randperm(length(message),50))));\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":145982,"edited_at":"2026-04-24T20:52:00.000Z","deleted_by":null,"deleted_at":null,"solvers_count":1,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2026-04-24T20:39:02.000Z","updated_at":"2026-04-26T16:16:52.000Z","published_at":"2026-04-24T20:39:02.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eProvided an encrypted message using AES CBC mode with PKCS#5 padding, an encrypted AES key in the form of an audio .wav file that is first encoded using RSA with Optimal Asymmetric Encryption Padding (OAEP) using SHA-256 hashing and MGF-1 padding and then encoded to an audio file using Bell202 encoding at 200 bits/sec, and an RSA private key, output the decoded message. The 32 byte AES IV has been placed as the first 32 bytes of the encrypted message.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"}],"problem_search":{"errors":[],"problems":[{"id":61302,"title":"Decode an Encrypted AES image using CTR (counter mode) with no padding","description":"Given an encoded AES image using CTR mode with no padding, the Initialization Vector (IV) (32 byte in uint8), and the AESkey (256bit hexadecimal), output the decoded image (uint8 matrix).","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(33, 33, 33); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 42px; display: block; min-width: 0px; padding-block-start: 0px; padding-inline-start: 2px; padding-left: 2px; padding-top: 0px; perspective-origin: 468.5px 21px; transform-origin: 468.5px 21px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 444.5px 21px; text-align: left; transform-origin: 444.5px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eGiven an encoded AES image using CTR mode with no padding, the Initialization Vector (IV) (32 byte in uint8), and the AESkey (256bit hexadecimal), output the decoded image (uint8 matrix).\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function image = decodeAESimage(encodedImage,AESkey,iv)\r\nimage = encodedImage;\r\nend","test_suite":"%%\r\ndropboxLink = 'https://www.dropbox.com/scl/fi/qf6yvfr6hg0gqw7xuq340/encryptedImage.png?rlkey=5v7l1iu1w841v47q5eriqxl5v\u0026dl=1';\r\nwebsave('image.jpg', dropboxLink);\r\nimage=imread('image.jpg');\r\nAESkey ='F78CF9B6B237F901406FC732DCFB299802620BF46FF2C9DD2C13992BBB6887F0';\r\niv=uint8([133,27,40,139,134,163,102,166,101,159,196,45,96,128,175,64]);\r\nI=decodeAESimage(image,AESkey,iv);\r\nimshow(I);\r\nx ='2A3C342C487D1D334348373A582846756745584B552E212B3F2F3DBD4F3F3B3A9D4D8295895838393F323B354760374D74343531385B73A21E378B3F333A43876A4B24473B60422C4F34348BB6354A364983336341937F6F836740BE383A38944A2D3C54';\r\nrng(sqrt(23));\r\ny=I(:)';\r\ny=y(randperm(length(y),100));\r\ny=dec2hex(y)';\r\ny=y(:)';\r\nassert(isequal(x,y));\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":145982,"edited_at":"2026-04-24T23:09:49.000Z","deleted_by":null,"deleted_at":null,"solvers_count":1,"test_suite_updated_at":"2026-04-24T23:09:49.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2026-04-24T22:59:28.000Z","updated_at":"2026-04-24T23:09:49.000Z","published_at":"2026-04-24T22:59:27.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven an encoded AES image using CTR mode with no padding, the Initialization Vector (IV) (32 byte in uint8), and the AESkey (256bit hexadecimal), output the decoded image (uint8 matrix).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":61301,"title":"Decode Message using AES with Cipher Block Chaining (CBC) and PKCS#5 padding","description":"Provided an encrypted message using AES CBC mode with PKCS#5 padding, an encrypted AES key in the form of an audio .wav file that is first encoded using RSA with Optimal Asymmetric Encryption Padding (OAEP) using SHA-256 hashing and MGF-1 padding and then encoded to an audio file using Bell202 encoding at 200 bits/sec, and an RSA private key, output the decoded message. The 32 byte AES IV has been placed as the first 32 bytes of the encrypted message.","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(33, 33, 33); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 84px; display: block; min-width: 0px; padding-block-start: 0px; padding-inline-start: 2px; padding-left: 2px; padding-top: 0px; perspective-origin: 468.5px 42px; transform-origin: 468.5px 42px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 444.5px 42px; text-align: left; transform-origin: 444.5px 42px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eProvided an encrypted message using AES CBC mode with PKCS#5 padding, an encrypted AES key in the form of an audio .wav file that is first encoded using RSA with Optimal Asymmetric Encryption Padding (OAEP) using SHA-256 hashing and MGF-1 padding and then encoded to an audio file using Bell202 encoding at 200 bits/sec, and an RSA private key, output the decoded message. The 32 byte AES IV has been placed as the first 32 bytes of the encrypted message.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function message = decodeMessage(RSAprivateKey,encodedAESmessage)\r\nAESencodedBell202=audioread(\"AESkey.wav\");\r\ndecodedMessage=AESdecode(encodedAESmessage,decodedAESkey(decodedAESbell202Key(AESencodedBell202,RSAprivateKey)));\r\nend","test_suite":"%%\r\ndropBoxlink='https://www.dropbox.com/scl/fi/ydamntz61tzox495uh9yl/AESkey.wav?rlkey=5rfuq2m291sul7pojbweyl678\u0026dl=1';\r\nwebsave('AESkey.wav', dropBoxlink);\r\nencodedMessage ='9506A9637F6A598DF91C500ABDA8366AE80EDDA429206C53724BE096846DC31DAC1F69164A90988E8BE92BCFE84704AD30553326DD2B0895BB00706B167C7CDB38BAB3662DC3EB16E3EE7868AF63C5A40B236DABB9229A45E174941636588147B34CBCE65BC65E3A98ABC10FD4460C48DDB766F31F2D7625456A0850C356647B99D3DC88051C3B0E8EB3FD5EB942930EE67EFAE60428193A6F2DCDD382F25C4A57A936FD045591E02D3F56371519D5E65EB8D9952C82E969A9BDCD531614D119E67DAAD12DE3D3F2DF85B482B07ABC4A867CF99F0774E1770D7C32D3EFA001BB796DDB958CEF1ECE86A7D0ABAE78B39396E0B7FCB37878CB6FA419A25A131FB2D1CA4C2F21A1E395071A3BB2FEEE4740468C785C04B540CB4CF54EAC5BB4A09A4D51AB5E0657D4A8C865FD101FF8671D5B9D703CD8410BACCBA3F11C5018325BA598AAD6E734CC54C2813B6A22DE596C3E46FB698E4DD4F59EF0BEB0BB26967612BD40C9807B6161E713E91105B6A6F15C99E09B673C53F5C2640E1EA38C6D6247E7DFB2621AC727C7185F43CFBF368CD2E554A580AF484F4BEE371566D7305860E22EC18310D0572869AB4C0F76DB732A1C9315D8D00DF9AB2B102B44783D559DF66C2661BF58BEA07B0D2A243F5087F75A2F8C90B1115E0C3399E26B41C8D37A3F049EC24153F2E9D9178B5E42C6DD738EEEE15E487BE3B80B3DC91FB8EE66E0E6D4F4D579B0A8ABE2F7C6B0C3C08F060CCDDA926B9229815EE9394453EB77083220C9A6928254A2A07605B297E1F7A6F64D4589A7FB3839EEFCE277EB1792D36ED89DC6E6C91DF746DBDD3C46B88AE72745D1FDD88F02855F04B9C8889DCCF984240E73C652930D021FA72E351DCE4A41B67EBB0143DAF25FD85741D35D70AAAE4193C3A9E8A0F752E1BD95A27414D9D628D21A0F4A88D421B3CDDE9CE7EE2E9F8C5DFC1C7C2E6201BD9292412E7ED5317A3C145EB30CB69304A27654EC7EB855014DDED71FBE628A9CD5013F84D41D5ADABA46C1B21FAB5812E8327F8EEAF711D07D3393C04941D8F6C169D7518F19CD5079CF9385A6939A602968856BC09B1E0CEC33F0091CCDD0FDF266C9293936D04F66821504F9F6E4A78073BE69C19307D3027774BC7515CF512B2D69E6F9D19117DD421615554400B0E2AC382ABB78CC2DF00E361390CFCF67AB80CBE2A611507A1255B1E36A33598E3433D172C8535D67CAD98720FD0483069E23F80C18';\r\nRSAprivateKey ='308204bd020100300d06092a864886f70d0101010500048204a7308204a30201000282010100c22c77c24cb26c8d736a9dd2936f8ba12e9732ce8924bfbd043854b57373407f6bdc30a5cb6d9e0aa6570121b2412ba0f3bb5fefa28de31f0e74fdd7855065bb9070fafbb754f8cea41f34b0a225550272ae35d7aebc39b3c08e945dd25f7f03ce39013b91184a06477fce13814afccee4f703464ba96311efa520fc3b8d44d665aad79a1f1237543818a01f00c6e540d5a3072684f6251aee1ee8ef6b788a37ec67a198e8b5b80392781ed5ab579f9c9f5f40cf9768cefef484ac40f271a5d954e0f46f0882e167d124e3ac8cc1edb57388c9fdab409829fc207c9040bc9debb1e741ab7d592e016b7f4817fed1ada5f90c5ffe83cae460bb6a5388b308877d02030100010282010045d253a60c8a443a80fc1f902eeff75798374a4fb644fea56b350e50c918f2625f58a82d95feeecb8990d399584dd2f0677443451a40c720cdc407db4dd6e11e170c6953c652c9bd148b1c193fd508c27e96624a124d20baa04d24d0afeb22f32d5e9630e335c6b887514fbaf7cd0d2720722a3d46cbbc12210851da2157e51e4ab55dc779121e31c33715588aacab2598184db78fca1bfe83999f345e12dcc47ffd4175b9a7ff7ab0f02f2aad70a23c8ef2e9145b32d7653c369b185f65fa333f4c336b8833d4b3a60a57f2b83a86b2325b7b83819ec11f1da623c82c6acbc801fd584b7f80d55462ef99753332fb07b2ccf53cca708c05e19ef73177af058102818100e69b937529da3ed5edb39eb16692617fd7f521ebceb4a9e838490ff53731e19cf5aaafcc06945b42d2041597fd4cb7877d979f6b70d54565d633fa777ab469e653757d0f9b0c65fa8c158c78b1fdbefb008c038380bdc3b26815572030515b381d58909429d4e8a1082b38b50e6776d715664f13effa1d74359605d9735dc74d02818100d78de19b5b4567cc4b4c40d9dd26f59e3cbad8a6bd7363827e4d39711e9f932b2179e74630bd207fa7ce64f01c551558d6f5e29f0c24ec418b56ce9b671d6615b530412b33ad91eb4ba49f2062cd67f81333336c66ab098090882fd1c9578d7f015e8b1ac2dc24fdbf8349e2f15e6f9d6615f4a73ac9e812cee837b163db88f10281800ce9ed6a043bfa84d458d8ac2a884bf972c8816bc91988e23e34a9361c2f28e93740a5b39132c1a18e4d384058a8f1261f3c5c6b11d87f9862546ad44204d461578f1ebfbef904c4f10f4bdc7e6b2d44b51522253d1263611c3f05b001c4ac8d09e7a9c1024eaff0449ad7041c9862a94cc37bee2be41fbe203a147dc6de1b8902818076811c2d4b0a673c5b913a7e0c2565176f8fd19829c38c4baba04d1a3199cd5103007ff388cc1157dd2b8d36ac7ce2558b287744b56a7f30b1a831c221f879ad2985b3ee4a64fc39fdc62d6da2a406aacdf3722c006dbbb5a0c01e7a1955370741fb76426a2a99739f9c503ca23226eec3b7026005e406e0803c0e9249b1e221028181008997dbe423e5aec33f16639360e242e4d6868f9cee9ea44d5937231406199797909dda0b9018742110915bdb5187108c781e3ee59c97c55f6248ddd496651f5b18f28b2cab33fa6fde940b42fbaa9c76904f736660117221d4e36a29dcdcce6505a79519b8617f3d005e13c2d49e88bfd4e054d8f18c27ad2999e04e7ee378fc';\r\nmessage=decodeMessage(RSAprivateKey, encodedMessage);\r\nm='tlastadBgatnnei,oegatnagdadhe ';\r\nrng(pi);\r\nassert(isequal(m,message(randperm(length(message),30))));\r\n%%\r\ndropBoxlink='https://www.dropbox.com/scl/fi/7meklids63pl4cwzwvpz1/AESkey1.wav?rlkey=qe7rmqfxb0ywx3r005x14nm00\u0026dl=1';\r\nwebsave('AESkey.wav', dropBoxlink);\r\nencodedMessage ='579253710F3EF83BB1A6B979981112326F3F1024D517C5E282E844B6B800402B13E67E9632108432A8C4D7202A1B4DED9022585443D67646A709905C70089A3DD98B5429BF3E746CD180EB8C521204F6AE23A9D4834D65C3C3C6B23449747ED405738305E95174353F8B483DB13DE71B0E473EB793A31A540203BE969CD9E7171F5EF09B6A7A02EE75AC720155D66BAB1F2D567C7E0AC280F93193CE5F731E25C9A02F1E315B3FD1A156BB0BCC5820C5EBB6F300B73691E9107F60BC0DDAD7F63A377B21835C7E7F98E15B24001336C23DA4D4CF51FB9454EC8904D9F9F802E1D60B462A21CCF335C625521C851EB2927EE100D4CE1D3599CE2F16B89C7FEDE9631F1991D26562342C42881B0AB694A26CE0C3064DDB98ACD0650458A84129CAD125E94B76D374A416068AB0F6CE7845D56378FC45B8025E3DB7C588013FE891432B1E60A81D2626B1CF150AFF1F645D5CC477ED496AB2D6FE9FFB292A2ABE1B17EE73C0E81AD1B764953418A0F49D09561DE337B990309108CF0F28A41E07A748E381C588A1B9103F70BBB3ED240583BA0B295106BEB9C3C5FD396B593E22C9BF86451CC3BA7FCEC73B214749483B67407DE4A6B8605F381118AA3D6859E59DF3988C5B1492A84A15A80847679EE64ACE2C650B6D7700F0D7D20F4CE6370263673349F9DCE372444F77CB384D348724B436D5AF2FEE5E7564684EA2CFC56CA786E34B98BEC030418AACFE54A5595C9F6491286C6060227939427E7341C209233C465AFA0504AD8BE57271A2A9F0C5CD127A861E4289642F9AD6C67E7A4B362EDB427AB493C4CC80E26F6A3EBC42ECBD0E329BC2CC45C0E433127A4A59B9FC430DC00F9A24E78DE77B2538EF6B29EF951073FCB3D90BC5FC6AA7E644895727EC8B2C0419D1148BB8CD28122A751940AF97D1D0B3378F6F3A818F7EF4B391E5E294A707ABEE6F265734EA94550F1C79251E5281BDC088C12F31230CEE145305C801D994EB632B2DF77CF69B4A2E3192DD14651DCA5FCAE2DA57764EC045AF5D6D';\r\nRSAprivateKey ='308204be020100300d06092a864886f70d0101010500048204a8308204a40201000282010100c3edfd3ba83e2876d3b0225edb9a11cbbe2b635447fba6095b7752bc4a46a4993dce739c559ebfe70f6bf51960722233b17853d15d3f5ca4e702ce24b19b0f077c0e727109d88435938dd76ed8456efc7edb29fed063324d6859b60c8254a72259bee5edb2bd82deb1d072fb63955c630db760c5e5e8a275b7a5b9b953def34d9400036eba13ab3924b06ace096ac505ce7a4355f87d5a50d4bc261e513575d4ee150829f39278560291f64e5aca84c6d40fbbfb0cc46a1848b807403e754d6098111f97015e3e2e2de11ee7aadb0a59175623f8ae6a92943055aea20d814cdd64f057e5d5bca151e864774cc38f25ffab25e1cc2e24290b044b1ee3f12d43a902030100010282010100c109243af7aaae014cd53737d012bebfc6d0469fcdfff0793da5955d2face4149ae161e44033150d18939bbaf1dbe1389efc57506a17b8363be7f6a40e5c1ff596d3410b7fd0d38959a42101f3908d25b5f24630e8ad22ed4307482690edc8713e8ca74a8694d270882e406acf95639daff0e126793ab77d557fb139179a0c88c124244d4d2a1f1e144fbfbad710accbc8f39e79277e5844fa94674871b6061771d70c961d9db04b2d248416a75e18ab14c0262c8501168d86c2909192184253f5f2e9f921ffdc90165b599c492770d488eb68966923a00bf8bd7d39e813d904c4f40a0a16870c1b7874116c27d3e6f5f678e78b04698bc031677418e3a0f8d102818100fb84b4232fc7c9ffce2c5a14fce1222c6bd0d873e1e40401c654a5a30e09651f370077583e1afaf1abf4d2d626120bf2c599dfb404fc7678b435684a6a792233a1a6df726cb64622830b8195631bc3f3dbd9040d3f97defe8d685a7dacdfa70f5d4a965fd15cc090745d203dc2425a300ed3e40c8611d38973754f99bddc5bb502818100c76bb7f572a10eafddcf49d3275965c63989ac8d5e9ee3841effcdeaeaf04f304001488e95b6be6a15e2f2efb5abcff90dcb1c5f78edbdcfb2f58bbe19d221f7f6f262721b876f984c1f6b2314b1b425d43e2fac1dee1ae9575247803b4ad9d8ff19a958901c93e7a4b9bf15b96e4370a0186220e7742ff8092ec1c5cc7688a502818100bce3a26d327af686f80d72f18420878b98c4d569e1e15de8ff4b9ec15fcf4a7430d856c89c8ba29e50a7a297552c0471245935197b0d26e3eb62989a1a703271581b7c7ff088cb0f2c1f3e0834d02b4f3e72328ac89183d4e3d9d4ebc1228dd20a1bf3e6add2dc832000b82fe96def515c316178ce4f20f07f1740da932da4690281804656cc501ada8c1fa411156d11180b39dbd99faf4d8ca59b5883c9d1ee844caa2c2947ba633c4df5853ac38da17ab4a49824e82114ba6694f7fe7c07d57bb4d78d96f8fa5e936add411c63e1bfcede47e990f5a7b3f6e42f21c9b7c6972353aba26f1eb84a3c8a3ece6f65e2f7c0d8b0c50754b55e6e30ed3fefea11268938b1028180597ad1f69b8b587207ececc77bab890a73a1a5bfdf0cab3499615b7442220e474e799088883d884afb4a70964c3ef4c4438f4801af85874c0d40d43b7f00789c3c79b10b7023ec7477ef1238e4234569b054100e9256c934efef6f498ee258eb6e180a35e83ad6d3d583147d9910725abf39e388d65f97d502f7792683fd2482';\r\nmessage=decodeMessage(RSAprivateKey, encodedMessage);\r\nm='gs,i     n,asolv  nlh r srenb.t , ihi d,dioyleleno';\r\nrng(exp(1));\r\nassert(isequal(m,message(randperm(length(message),50))));\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":145982,"edited_at":"2026-04-24T20:52:00.000Z","deleted_by":null,"deleted_at":null,"solvers_count":1,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2026-04-24T20:39:02.000Z","updated_at":"2026-04-26T16:16:52.000Z","published_at":"2026-04-24T20:39:02.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eProvided an encrypted message using AES CBC mode with PKCS#5 padding, an encrypted AES key in the form of an audio .wav file that is first encoded using RSA with Optimal Asymmetric Encryption Padding (OAEP) using SHA-256 hashing and MGF-1 padding and then encoded to an audio file using Bell202 encoding at 200 bits/sec, and an RSA private key, output the decoded message. The 32 byte AES IV has been placed as the first 32 bytes of the encrypted message.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"}],"term":"tag:\"aes\"","current_player_id":null,"fields":[{"name":"page","type":"integer","callback":null,"default":1,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"per_page","type":"integer","callback":null,"default":50,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"sort","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"body","type":"text","callback":null,"default":"*:*","directive":null,"facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":false},{"name":"group","type":"string","callback":null,"default":null,"directive":"group","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"difficulty_rating_bin","type":"string","callback":null,"default":null,"directive":"difficulty_rating_bin","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"id","type":"integer","callback":null,"default":null,"directive":"id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"tag","type":"string","callback":null,"default":null,"directive":"tag","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"product","type":"string","callback":null,"default":null,"directive":"product","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_at","type":"timeframe","callback":{},"default":null,"directive":"created_at","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"profile_id","type":"integer","callback":null,"default":null,"directive":"author_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_by","type":"string","callback":null,"default":null,"directive":"author","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player_id","type":"integer","callback":null,"default":null,"directive":"solver_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player","type":"string","callback":null,"default":null,"directive":"solver","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"solvers_count","type":"integer","callback":null,"default":null,"directive":"solvers_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"comments_count","type":"integer","callback":null,"default":null,"directive":"comments_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"likes_count","type":"integer","callback":null,"default":null,"directive":"likes_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leader_id","type":"integer","callback":null,"default":null,"directive":"leader_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leading_solution","type":"integer","callback":null,"default":null,"directive":"leading_solution","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true}],"filters":[{"name":"asset_type","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":"\"cody:problem\"","prepend":true},{"name":"profile_id","type":"integer","callback":{},"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":"author_id","static":null,"prepend":true}],"query":{"params":{"per_page":50,"term":"tag:\"aes\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"aes\"","","\"","aes","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f4774a5e6b0\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f4774a5e610\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f4774a5dd50\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f4774a5e9d0\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f4774a5e930\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f4774a5e890\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f4774a5e750\u003e":"tag:\"aes\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f4774a5e750\u003e":"tag:\"aes\""},"queried_facets":{}},"query_backend":{"connection":{"configuration":{"index_url":"http://index-op-v2/solr/","query_url":"http://search-op-v2/solr/","direct_access_index_urls":["http://index-op-v2/solr/"],"direct_access_query_urls":["http://search-op-v2/solr/"],"timeout":10,"vhost":"search","exchange":"search.topic","heartbeat":30,"pre_index_mode":false,"host":"rabbitmq-eks","port":5672,"username":"cody-search","password":"78X075ddcV44","virtual_host":"search","indexer":"amqp","http_logging":"true","core":"cody"},"query_connection":{"uri":"http://search-op-v2/solr/cody/","proxy":null,"connection":{"parallel_manager":null,"headers":{"User-Agent":"Faraday v1.0.1"},"params":{},"options":{"params_encoder":"Faraday::FlatParamsEncoder","proxy":null,"bind":null,"timeout":null,"open_timeout":null,"read_timeout":null,"write_timeout":null,"boundary":null,"oauth":null,"context":null,"on_data":null},"ssl":{"verify":true,"ca_file":null,"ca_path":null,"verify_mode":null,"cert_store":null,"client_cert":null,"client_key":null,"certificate":null,"private_key":null,"verify_depth":null,"version":null,"min_version":null,"max_version":null},"default_parallel_manager":null,"builder":{"adapter":{"name":"Faraday::Adapter::NetHttp","args":[],"block":null},"handlers":[{"name":"Faraday::Response::RaiseError","args":[],"block":null}],"app":{"app":{"ssl_cert_store":{"verify_callback":null,"error":null,"error_string":null,"chain":null,"time":null},"app":{},"connection_options":{},"config_block":null}}},"url_prefix":"http://search-op-v2/solr/cody/","manual_proxy":false,"proxy":null},"update_format":"RSolr::JSON::Generator","update_path":"update","options":{"url":"http://search-op-v2/solr/cody"}}},"query":{"params":{"per_page":50,"term":"tag:\"aes\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"aes\"","","\"","aes","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f4774a5e6b0\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f4774a5e610\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f4774a5dd50\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f4774a5e9d0\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f4774a5e930\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f4774a5e890\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f4774a5e750\u003e":"tag:\"aes\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f4774a5e750\u003e":"tag:\"aes\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":61302,"difficulty_rating":"medium"},{"id":61301,"difficulty_rating":"hard"}]}}