{"ScriptPreparationCode":"const key = \u0027izgzge46767rfede4h\u0027;\r\n// counter will be needed for decryption\r\nconst counter = window.crypto.getRandomValues(new Uint8Array(16));\r\n\r\nconst tests = {\r\n \u0022AES-CTR\u0022: encryptMessage(\u0022AES-CTR\u0022),\r\n \u0022AES-CBC\u0022: encryptMessage(\u0022AES-CBC\u0022),\r\n \u0022AES-GCM\u0022: encryptMessage(\u0022AES-GCM\u0022),\r\n \u0022RSA-OAEP\u0022: encryptMessage(\u0022RSA-OAEP\u0022),\r\n};\r\n\r\nfunction encryptMessage(type) {\r\n let encoded = \u0027Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin feugiat libero metus, a blandit eros fermentum id. Vivamus turpis quam, fermentum nec egestas et, auctor at sem. Fusce vitae maximus nibh. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam commodo ligula massa, eget vehicula libero pharetra sed. Morbi ex lectus, ornare sit amet dictum vel, porta in nisl. Vestibulum vel iaculis risus. Mauris eros lorem, fermentum vel augue ac, lacinia venenatis dui. Maecenas vel ligula nec risus sagittis semper sed ac erat. Pellentesque pharetra egestas mattis. Vivamus lacus magna, pharetra non tristique vitae, dignissim id lacus. Nunc vel aliquam ante.Interdum et malesuada fames ac ante ipsum primis in faucibus. Suspendisse potenti. Donec tempor posuere eros ut volutpat. Duis neque justo, rhoncus vitae purus quis, sodales accumsan justo. Quisque non ex eros. Sed vulputate metus at risus vulputate, vitae iaculis dolor posuere. Maecenas eu eleifend magna. Nullam nec tellus ex. Morbi ultricies efficitur elementum. Nunc volutpat, elit sit amet rhoncus luctus, est enim molestie nunc, sit amet pretium metus metus ac arcu. Morbi ac justo sed diam imperdiet faucibus. Etiam mollis vitae magna quis rutrum. Integer nec velit viverra ex volutpat mattis.Donec at luctus velit, non sollicitudin orci. Vivamus quis dictum purus. Morbi at lectus cursus, rutrum lectus et, molestie nisl. Nunc felis elit, semper ut erat ac, ultricies lacinia magna. Suspendisse laoreet laoreet dui, id malesuada risus. Nunc condimentum non lacus nec venenatis. Praesent nec metus erat. Morbi ex risus, mattis aliquet arcu a, hendrerit eleifend nisl. Proin blandit odio ac ipsum accumsan, quis elementum lacus porttitor. Donec consequat scelerisque orci, a auctor lacus mollis non.Morbi dapibus convallis finibus. Maecenas quis hendrerit odio, vitae pretium turpis. Mauris vehicula rhoncus justo non auctor. Pellentesque iaculis vestibulum neque, at vehicula libero convallis in. Sed sapien neque, luctus ac libero ullamcorper, euismod blandit nulla. Proin auctor erat eu vehicula rutrum. Fusce interdum sodales est, eu scelerisque ante sollicitudin imperdiet. Phasellus venenatis sem vel nisi malesuada, sit amet viverra ipsum pellentesque. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam consectetur ex ac erat vestibulum vestibulum. Mauris nec quam sodales, iaculis sem non, posuere elit. Donec quis blandit nulla. Proin convallis varius mi nec ultrices. Ut pretium, libero ut pellentesque semper, risus tortor tempus nunc, eget laoreet justo tortor rutrum risus. Mauris pellentesque sem et metus porttitor, ut varius diam dapibus.Sed vulputate dui at ligula pulvinar, imperdiet ornare nisl hendrerit. Integer dignissim diam quam, vitae pellentesque nibh pulvinar sed. Phasellus ac justo ac nisi cursus ultrices. Aenean volutpat nunc id ligula auctor auctor. Mauris cursus odio eget eros iaculis, at luctus magna commodo. Etiam quis ligula quis erat egestas faucibus a nec tortor. Cras sit amet pulvinar lorem. Vestibulum fermentum, magna in tempor cursus, nisi risus luctus lectus, vel fermentum dolor magna ut lorem. Praesent ac nunc lacinia, convallis magna in, rhoncus turpis. Integer ut consequat massa. Vivamus at sapien eros. Curabitur ex massa, efficitur quis feugiat ornare, porttitor non dui. Nunc quis tempus tortor, sed aliquet sapien. Ut risus mauris, elementum non tincidunt in, efficitur et urna. Praesent maximus odio quis enim faucibus, at vulputate nisi convallis.\u0027;\r\n \r\n return window.crypto.subtle.encrypt(\r\n {\r\n name: type,\r\n counter,\r\n length: 64,\r\n },\r\n key,\r\n encoded,\r\n );\r\n}\r\nfunction decryptMessage(type) {\r\n return window.crypto.subtle.decrypt(\r\n { name: type, counter, length: 64 },\r\n key,\r\n tests[type],\r\n );\r\n}","TestCases":[{"Name":"CTR","Code":"decryptMessage(\u0022AES-CTR\u0022);","IsDeferred":false},{"Name":"CBC","Code":"decryptMessage(\u0022AES-CBC\u0022);","IsDeferred":false},{"Name":"GCM","Code":"decryptMessage(\u0022AES-GCM\u0022);","IsDeferred":false},{"Name":"RSA","Code":"decryptMessage(\u0022RSA-OAEP\u0022);","IsDeferred":false}]}