PageSourceSearch

https://rgbstudios.org/_app/immutable/nodes/80.8e17f352.js

js rgbstudios.org collected 2026-09-24 13:30:36 UTC 13,477 bytes, 11 lines download raw bytes

1import{S as ol,i as nl,s as il,z as hl,d as g,e as n,f,A as cl,k as E,l as i,m as h,n as u,j as r,o as p,Z as rl,K as me,C as fl,p as U,q as e,_ as Ne,F as J,t as ul,b as dl,D as pl,E as _l,I as De,$ as Yt,V as Oe}from"../chunks/index.bd0d3ab8.js";import{P as ml}from"../chunks/ProjectHeader.01831fe7.js";function xt(l,t,s){const a=l.slice();return a[19]=t[s],a[20]=t,a[21]=s,a}function el(l){let t,s,a,v,c,A;function b(){l[13].call(t,l[19])}function _(){return l[14](l[19])}return{c(){t=n("input"),s=g(),a=n("button"),v=f("Generate Hash"),this.h()},l(H){t=i(H,"INPUT",{type:!0,class:!0,placeholder:!0}),s=E(H),a=i(H,"BUTTON",{class:!0});var k=h(a);v=u(k,"Generate Hash"),k.forEach(r),this.h()},h(){p(t,"type","text"),p(t,"class","input input-bordered w-full"),p(t,"placeholder","Enter string to hash"),p(a,"class","block btn btn-secondary")},m(H,k){U(H,t,k),Oe(t,l[2][l[19]]),U(H,s,k),U(H,a,k),e(a,v),c||(A=[J(t,"input",b),J(a,"click",_)],c=!0)},p(H,k){l=H,k&4&&t.value!==l[2][l[19]]&&Oe(t,l[2][l[19]])},d(H){H&&r(t),H&&r(s),H&&r(a),c=!1,De(A)}}}function tl(l){let t,s,a,v,c,A;function b(){return l[15](l[19])}return{c(){t=n("input"),s=g(),a=n("button"),v=f("Generate File Hash"),this.h()},l(_){t=i(_,"INPUT",{type:!0,class:!0}),s=E(_),a=i(_,"BUTTON",{class:!0});var H=h(a);v=u(H,"Generate File Hash"),H.forEach(r),this.h()},h(){p(t,"type","file"),p(t,"class","file-input"),p(a,"class","block btn btn-secondary")},m(_,H){U(_,t,H),U(_,s,H),U(_,a,H),e(a,v),c||(A=[J(t,"change",l[6].bind(null,l[19])),J(a,"click",b)],c=!0)},p(_,H){l=_},d(_){_&&r(t),_&&r(s),_&&r(a),c=!1,De(A)}}}function ll(l){let t,s,a;function v(){l[16].call(t,l[19])}return{c(){t=n("input"),this.h()},l(c){t=i(c,"INPUT",{type:!0,class:!0,placeholder:!0}),this.h()},h(){p(t,"type","text"),p(t,"class","input input-bordered w-full"),p(t,"placeholder","Enter hash")},m(c,A){U(c,t,A),Oe(t,l[3][l[19]]),s||(a=J(t,"input",v),s=!0)},p(c,A){l=c,A&8&&t.value!==l[3][l[19]]&&Oe(t,l[3][l[19]])},d(c){c&&r(t),s=!1,a()}}}function al(l){let t,s,a,v;return{c(){t=n("p"),s=f("Generated Hash: "),a=n("input"),this.h()},l(c){t=i(c,"P",{});var A=h(t);s=u(A,"Generated Hash: "),a=i(A,"INPUT",{type:!0,class:!0}),A.forEach(r),this.h()},h(){p(a,"type","text"),p(a,"class","input input-bordered w-full"),a.value=v=l[4][l[19]]},m(c,A){U(c,t,A),e(t,s),e(t,a)},p(c,A){A&16&&v!==(v=c[4][c[19]])&&a.value!==v&&(a.value=v)},d(c){c&&r(t)}}}function sl(l){let t,s,a,v,c,A,b,_,H,k,j,O,G,D,M;function Q(){l[12].call(s,l[19])}let S=l[1][l[19]]==="text"&&el(l),y=l[1][l[19]]==="file"&&tl(l),T=l[1][l[19]]==="hash"&&ll(l),I=l[1][l[19]]!=="hash"&&al(l);return{c(){t=n("div"),s=n("select"),a=n("option"),v=f("Text Input"),c=n("option"),A=f("File Input"),b=n("option"),_=f("Enter Hash"),H=g(),S&&S.c(),k=g(),y&&y.c(),j=g(),T&&T.c(),O=g(),I&&I.c(),G=g(),this.h()},l(F){t=i(F,"DIV",{class:!0});var o=h(t);s=i(o,"SELECT",{class:!0});var N=h(s);a=i(N,"OPTION",{});var L=h(a);v=u(L,"Text Input"),L.forEach(r),c=i(N,"OPTION",{});var Y=h(c);A=u(Y,"File Input"),Y.forEach(r),b=i(N,"OPTION",{});var R=h(b);_=u(R,"Enter Hash"),R.forEach(r),N.forEach(r),H=E(o),S&&S.l(o),k=E(o),y&&y.l(o),j=E(o),T&&T.l(o),O=E(o),I&&I.l(o),G=E(o),o.forEach(r),this.h()},h(){a.__value="text",a.value=a.__value,a.selected=!0,c.__value="file",c.value=c.__value,b.__value="hash",b.value=b.__value,p(s,"class","select select-bordered"),l[1][l[19]]===void 0&&rl(Q),p(t,"class","bg-base-800 p-4 flex flex-col gap-4 w-full")},m(F,o){U(F,t,o),e(t,s),e(s,a),e(a,v),e(s,c),e(c,A),e(s,b),e(b,_),Ne(s,l[1][l[19]],!0),e(t,H),S&&S.m(t,null),e(t,k),y&&y.m(t,null),e(t,j),T&&T.m(t,null),e(t,O),I&&I.m(t,null),e(t,G),D||(M=[J(s,"change",Q),J(s,"change",l[9])],D=!0)},p(F,o){l=F,o&2&&Ne(s,l[1][l[19]]),l[1][l[19]]==="text"?S?S.p(l,o):(S=el(l),S.c(),S.m(t,k)):S&&(S.d(1),S=null),l[1][l[19]]==="file"?y?y.p(l,o):(y=tl(l),y.c(),y.m(t,j)):y&&(y.d(1),y=null),l[1][l[19]]==="hash"?T?T.p(l,o):(T=ll(l),T.c(),T.m(t,O)):T&&(T.d(1),T=null),l[1][l[19]]!=="hash"?I?I.p(l,o):(I=al(l),I.c(),I.m(t,G)):I&&(I.d(1),I=null)},d(F){F&&r(t),S&&S.d(),y&&y.d(),T&&T.d(),I&&I.d(),D=!1,De(M)}}}function vl(l){let t;return{c(){t=f("Hashes do not match")},l(s){t=u(s,"Hashes do not match")},m(s,a){U(s,t,a)},d(s){s&&r(t)}}}function bl(l){let t;return{c(){t=f("Hashes match")},l(s){t=u(s,"Hashes match")},m(s,a){U(s,t,a)},d(s){s&&r(t)}}}function Hl(l){let t;return{c(){t=f("Please generate or enter both hashes first")},l(s){t=u(s,"Please generate or enter both hashes first")},m(s,a){U(s,t,a)},d(s){s&&r(t)}}}function gl(l){let t,s,a,v,c,A,b,_,H,k,j,O,G,D,M,Q,S,y,T,I,F,o,N,L,Y,R,ve,we,w,V,be,Ce,Ue,He,Fe,Be,ge,je,Ge,q,se,Le,Re,Ee,ze,We,Ae,Ve,qe,K,re,Ke,Ze,Se,$e,Je,Te,Me,Qe,Z,oe,Xe,Ye,ke,xe,et,ye,tt,lt,$,ne,at,st,Ie,rt,ot,Pe,nt,it,z,ht,x,ct,ft,ee,ut,dt,te,pt,_t,ie,mt,vt,he,bt,le,Ht,At;t=new ml({props:{title:"Hash Checker",slug:"hash-checker",description:"Check hashes for text or files, compare hashes, and pick from several different hasing algorithms such as SHA-256, SHA-384, and SHA
1-512",keywords:["check text hash","check file hash","compare text hashes","compare file hashes","compare text hash to file hash","copy file hash","hash comparison tool","sha-256 hash comparison tool","sha-256 hash generator","sha-256 hash comparison tool","sha-384 hash generator","sha-384 hash comparison tool","sha-512 hash generator","sha-512 hash comparison tool","sha-1 hash generator"],icon:"img/projects/icons/hash-checker.png",screenshot:"img/projects/screenshots/hash-checker.png"}});let gt=[0,1],B=[];for(let d=0;d<2;d+=1)B[d]=sl(xt(l,gt,d));function St(d,m){if(d[5]==="error")return Hl;if(d[5]==="match")return bl;if(d[5]==="nomatch")return vl}let ce=St(l),C=ce&&ce(l);return{c(){hl(t.$$.fragment),s=g(),a=n("div"),v=n("label"),c=f("Hash Algorithm:"),A=g(),b=n("select"),_=n("option"),H=f("SHA-1"),k=n("option"),j=f("SHA-256"),O=n("option"),G=f("SHA-384"),D=n("option"),M=f("SHA-512"),Q=g(),S=n("div");for(let d=0;d<2;d+=1)B[d].c();y=g(),T=n("button"),I=f("Compare Hashes"),F=g(),o=n("p"),C&&C.c(),N=g(),L=n("hr"),Y=g(),R=n("h3"),ve=f("Hashing Algorithm Information"),we=g(),w=n("table"),V=n("tr"),be=n("th"),Ce=f("Algorithm"),Ue=g(),He=n("th"),Fe=f("Output length (bits)"),Be=g(),ge=n("th"),je=f("Block size (bits)"),Ge=g(),q=n("tr"),se=n("td"),Le=f("SHA-1"),Re=g(),Ee=n("td"),ze=f("160"),We=g(),Ae=n("td"),Ve=f("512"),qe=g(),K=n("tr"),re=n("td"),Ke=f("SHA-256"),Ze=g(),Se=n("td"),$e=f("256"),Je=g(),Te=n("td"),Me=f("512"),Qe=g(),Z=n("tr"),oe=n("td"),Xe=f("SHA-384"),Ye=g(),ke=n("td"),xe=f("384"),et=g(),ye=n("td"),tt=f("1024"),lt=g(),$=n("tr"),ne=n("td"),at=f("SHA-512"),st=g(),Ie=n("td"),rt=f("512"),ot=g(),Pe=n("td"),nt=f("1024"),it=g(),z=n("p"),ht=f(`Source:
2		`),x=n("a"),ct=f("Web Crypto API"),ft=f(`
3		  |   Spec:
4		`),ee=n("a"),ut=f("FIPS 180-4"),dt=f(`
5		  |   Learn about hashes:
6		`),te=n("a"),pt=f("Hash Uses"),_t=g(),ie=n("p"),mt=f("Note: SHA-1 is considered vulnerable and should not be used for cryptographic applications"),vt=g(),he=n("p"),bt=f("Note: Each character output above is 4 bits, since they are in hex"),this.h()},l(d){cl(t.$$.fragment,d),s=E(d),a=i(d,"DIV",{class:!0});var m=h(a);v=i(m,"LABEL",{for:!0,class:!0});var P=h(v);c=u(P,"Hash Algorithm:"),P.forEach(r),A=E(m),b=i(m,"SELECT",{id:!0,class:!0});var X=h(b);_=i(X,"OPTION",{});var Tt=h(_);H=u(Tt,"SHA-1"),Tt.forEach(r),k=i(X,"OPTION",{});var kt=h(k);j=u(kt,"SHA-256"),kt.forEach(r),O=i(X,"OPTION",{});var yt=h(O);G=u(yt,"SHA-384"),yt.forEach(r),D=i(X,"OPTION",{});var It=h(D);M=u(It,"SHA-512"),It.forEach(r),X.forEach(r),Q=E(m),S=i(m,"DIV",{class:!0});var Pt=h(S);for(let Et=0;Et<2;Et+=1)B[Et].l(Pt);Pt.forEach(r),y=E(m),T=i(m,"BUTTON",{class:!0});var Nt=h(T);I=u(Nt,"Compare Hashes"),Nt.forEach(r),F=E(m),o=i(m,"P",{class:!0});var Ot=h(o);C&&C.l(Ot),Ot.forEach(r),N=E(m),L=i(m,"HR",{}),Y=E(m),R=i(m,"H3",{class:!0});var Dt=h(R);ve=u(Dt,"Hashing Algorithm Information"),Dt.forEach(r),we=E(m),w=i(m,"TABLE",{class:!0});var W=h(w);V=i(W,"TR",{});var fe=h(V);be=i(fe,"TH",{});var wt=h(be);Ce=u(wt,"Algorithm"),wt.forEach(r),Ue=E(fe),He=i(fe,"TH",{});var Ct=h(He);Fe=u(Ct,"Output length (bits)"),Ct.forEach(r),Be=E(fe),ge=i(fe,"TH",{});var Ut=h(ge);je=u(Ut,"Block size (bits)"),Ut.forEach(r),fe.forEach(r),Ge=E(W),q=i(W,"TR",{});var ue=h(q);se=i(ue,"TD",{class:!0});var Ft=h(se);Le=u(Ft,"SHA-1"),Ft.forEach(r),Re=E(ue),Ee=i(ue,"TD",{});var Bt=h(Ee);ze=u(Bt,"160"),Bt.forEach(r),We=E(ue),Ae=i(ue,"TD",{});var jt=h(Ae);Ve=u(jt,"512"),jt.forEach(r),ue.forEach(r),qe=E(W),K=i(W,"TR",{});var de=h(K);re=i(de,"TD",{class:!0});var Gt=h(re);Ke=u(Gt,"SHA-256"),Gt.forEach(r),Ze=E(de),Se=i(de,"TD",{});var Lt=h(Se);$e=u(Lt,"256"),Lt.forEach(r),Je=E(de),Te=i(de,"TD",{});var Rt=h(Te);Me=u(Rt,"512"),Rt.forEach(r),de.forEach(r),Qe=E(W),Z=i(W,"TR",{});var pe=h(Z);oe=i(pe,"TD",{class:!0});var zt=h(oe);Xe=u(zt,"SHA-384"),zt.forEach(r),Ye=E(pe),ke=i(pe,"TD",{});var Wt=h(ke);xe=u(Wt,"384"),Wt.forEach(r),et=E(pe),ye=i(pe,"TD",{});var Vt=h(ye);tt=u(Vt,"1024"),Vt.forEach(r),pe.forEach(r),lt=E(W),$=i(W,"TR",{});var _e=h($);ne=i(_e,"TD",{class:!0});var qt=h(ne);at=u(qt,"SHA-512"),qt.forEach(r),st=E(_e),Ie=i(_e,"TD",{});var Kt=h(Ie);rt=u(Kt,"512"),Kt.forEach(r),ot=E(_e),Pe=i(_e,"TD",{});var Zt=h(Pe);nt=u(Zt,"1024"),Zt.forEach(r),_e.forEach(r),W.forEach(r),it=E(m),z=i(m,"P",{});var ae=h(z);ht=u(ae,`Source:
7		`),x=i(ae,"A",{class:!0,href:!0});var $t=h(x);ct=u($t,"Web Crypto API"),$t.forEach(r),ft=u(ae,`
8		  |   Spec:
9		`),ee=i(ae,"A",{class:!0,href:!0});var Jt=h(ee);ut=u(Jt,"FIPS 180-4"),Jt.forEach(r),dt=u(ae,`
10		  |   Learn about hashes:
11		`),te=i(ae,"A",{href:!0,class:!0});var Mt=h(te);pt=u(Mt,"Hash Uses"),Mt.forEach(r),ae.forEach(r),_t=E(m),ie=i(m,"P",{class:!0});var Qt=h(ie);
11mt=u(Qt,"Note: SHA-1 is considered vulnerable and should not be used for cryptographic applications"),Qt.forEach(r),vt=E(m),he=i(m,"P",{class:!0});var Xt=h(he);bt=u(Xt,"Note: Each character output above is 4 bits, since they are in hex"),Xt.forEach(r),m.forEach(r),this.h()},h(){p(v,"for","hash-algorithm"),p(v,"class","mr-2"),_.__value="SHA-1",_.value=_.__value,k.__value="SHA-256",k.value=k.__value,k.selected=!0,O.__value="SHA-384",O.value=O.__value,D.__value="SHA-512",D.value=D.__value,p(b,"id","hash-algorithm"),p(b,"class","select select-bordered"),l[0]===void 0&&rl(()=>l[11].call(b)),p(S,"class","my-8 flex justify-around flex-col md:flex-row gap-8"),p(T,"class","btn btn-primary"),p(o,"class","mt-4 text-3xl p-2 bg-opacity-50"),me(o,"bg-error",l[5]==="error"),me(o,"bg-success",l[5]==="match"),me(o,"bg-warning",l[5]==="nomatch"),p(R,"class","text-2xl mt-8"),p(se,"class","font-bold"),p(re,"class","font-bold"),p(oe,"class","font-bold"),p(ne,"class","font-bold"),p(w,"class","table bg-base-800 table-compact w-full my-4"),p(x,"class","link link-hover font-bold"),p(x,"href","https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest"),p(ee,"class","link link-hover font-bold"),p(ee,"href","https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf"),p(te,"href","https://developer.mozilla.org/en-US/docs/Web/API/Web_Crypto_API/Non-cryptographic_uses_of_subtle_crypto"),p(te,"class","link link-hover font-bold"),p(ie,"class","mt-4"),p(he,"class","mt-4"),p(a,"class","text-center container my-8")},m(d,m){fl(t,d,m),U(d,s,m),U(d,a,m),e(a,v),e(v,c),e(a,A),e(a,b),e(b,_),e(_,H),e(b,k),e(k,j),e(b,O),e(O,G),e(b,D),e(D,M),Ne(b,l[0],!0),e(a,Q),e(a,S);for(let P=0;P<2;P+=1)B[P]&&B[P].m(S,null);e(a,y),e(a,T),e(T,I),e(a,F),e(a,o),C&&C.m(o,null),e(a,N),e(a,L),e(a,Y),e(a,R),e(R,ve),e(a,we),e(a,w),e(w,V),e(V,be),e(be,Ce),e(V,Ue),e(V,He),e(He,Fe),e(V,Be),e(V,ge),e(ge,je),e(w,Ge),e(w,q),e(q,se),e(se,Le),e(q,Re),e(q,Ee),e(Ee,ze),e(q,We),e(q,Ae),e(Ae,Ve),e(w,qe),e(w,K),e(K,re),e(re,Ke),e(K,Ze),e(K,Se),e(Se,$e),e(K,Je),e(K,Te),e(Te,Me),e(w,Qe),e(w,Z),e(Z,oe),e(oe,Xe),e(Z,Ye),e(Z,ke),e(ke,xe),e(Z,et),e(Z,ye),e(ye,tt),e(w,lt),e(w,$),e($,ne),e(ne,at),e($,st),e($,Ie),e(Ie,rt),e($,ot),e($,Pe),e(Pe,nt),e(a,it),e(a,z),e(z,ht),e(z,x),e(x,ct),e(z,ft),e(z,ee),e(ee,ut),e(z,dt),e(z,te),e(te,pt),e(a,_t),e(a,ie),e(ie,mt),e(a,vt),e(a,he),e(he,bt),le=!0,Ht||(At=[J(b,"change",l[11]),J(T,"click",l[10])],Ht=!0)},p(d,[m]){if(m&1&&Ne(b,d[0]),m&990){gt=[0,1];let P;for(P=0;P<2;P+=1){const X=xt(d,gt,P);B[P]?B[P].p(X,m):(B[P]=sl(X),B[P].c(),B[P].m(S,null))}for(;P<2;P+=1)B[P].d(1)}ce!==(ce=St(d))&&(C&&C.d(1),C=ce&&ce(d),C&&(C.c(),C.m(o,null))),(!le||m&32)&&me(o,"bg-error",d[5]==="error"),(!le||m&32)&&me(o,"bg-success",d[5]==="match"),(!le||m&32)&&me(o,"bg-warning",d[5]==="nomatch")},i(d){le||(ul(t.$$.fragment,d),le=!0)},o(d){dl(t.$$.fragment,d),le=!1},d(d){pl(t,d),d&&r(s),d&&r(a),_l(B,d),C&&C.d(),Ht=!1,De(At)}}}function El(l,t,s){let a="SHA-256",v=["text","text"],c=["",""],A=[null,null],b=["",""],_=["",""],H="";function k(o,N){const L=N.target;A[o]=L.files?L.files[0]:null}async function j(o,N){const L=await crypto.subtle.digest(a,o),R=Array.from(new Uint8Array(L)).map(ve=>ve.toString(16).padStart(2,"0")).join("");s(4,_[N]=R,_)}async function O(o){j(new TextEncoder().encode(c[o]),o)}async function G(o){const N=A[o];if(!N){alert("Please select a file first.");return}j(await N.arrayBuffer(),o)}async function D(){}async function M(){await D();const o=v[0]==="hash"?b[0]:_[0],N=v[1]==="hash"?b[1]:_[1];!o||!N?s(5,H="error"):s(5,H=o===N?"match":"nomatch")}function Q(){a=Yt(this),s(0,a)}function S(o){v[o]=Yt(this),s(1,v)}function y(o){c[o]=this.value,s(2,c)}const T=o=>O(o),I=o=>G(o);function F(o){b[o]=this.value,s(3,b)}return[a,v,c,b,_,H,k,O,G,D,M,Q,S,y,T,I,F]}class Tl extends ol{constructor(t){super(),nl(this,t,El,gl,il,{})}}export{Tl as component};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.