JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdn.steemjs.com/lib/latest/steem.min.js"></script>
<div>
포스팅의 TX 값: <input type="text" style="width:300px;" name="post_tx" value="b6e7dd305e66c86a03ca07b2f1108d9ed70f2cea"/>
</div>
<div>
보팅의 TX 값: <input type="text" style="width:300px;" name="vote_tx" value="a302110c0d93b2fc2c839ca68e9d1faa3c4f9efc"/>
</div>
<div>
참여자 계정 <input type="text" style="width:300px;" name="voter" value=""/> (특수한 상황이 아니면 입력하지 않아도 됨)
</div>
<button onclick="calc();">확인</button>

<dl>
<dt>당첨 추출 대상 값</dt>
<dd id="lucky_org"></dd>
<dt>당첨 추출 해시 값</dt>
<dd id="lucky_hash"></dd>
<dt>당첨 추출 바이너리 값</dt>
<dd id="lucky_bin"></dd>
<dt>당첨 번호</dt>
<dd id="lucky_digit"></dd>
</dl>

<dl>
<dt>참여 추출 대상 값</dt>
<dd id="ticket_org"></dd>
<dt>참여 추출 해시 값</dt>
<dd id="ticket_hash"></dd>
<dt>참여 추출 바이너리 값</dt>
<dd id="ticket_bin"></dd>
<dt>참여 번호</dt>
<dd id="ticket_digit"></dd>
<dt>참여 회차</dt>
<dd id="ticket_url"></dd>
</dl>

CSS

#lucky {
  
}

JavaScript

function SHA256(s) {

  var chrsz = 8;
  var hexcase = 0;

  function safe_add(x, y) {
    var lsw = (x & 0xFFFF) + (y & 0xFFFF);
    var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
    return (msw << 16) | (lsw & 0xFFFF);
  }

  function S(X, n) {
    return (X >>> n) | (X << (32 - n));
  }

  function R(X, n) {
    return (X >>> n);
  }

  function Ch(x, y, z) {
    return ((x & y) ^ ((~x) & z));
  }

  function Maj(x, y, z) {
    return ((x & y) ^ (x & z) ^ (y & z));
  }

  function Sigma0256(x) {
    return (S(x, 2) ^ S(x, 13) ^ S(x, 22));
  }

  function Sigma1256(x) {
    return (S(x, 6) ^ S(x, 11) ^ S(x, 25));
  }

  function Gamma0256(x) {
    return (S(x, 7) ^ S(x, 18) ^ R(x, 3));
  }

  function Gamma1256(x) {
    return (S(x, 17) ^ S(x, 19) ^ R(x, 10));
  }

  function core_sha256(m, l) {

    var K = new Array(0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5, 0x3956C25B, 0x59F111F1,
      0x923F82A4, 0xAB1C5ED5, 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3,
      0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174, 0xE49B69C1, 0xEFBE4786,
      0xFC19DC6, 0x240CA1CC, 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,
      0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7, 0xC6E00BF3, 0xD5A79147,
      0x6CA6351, 0x14292967, 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13,
      0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85, 0xA2BFE8A1, 0xA81A664B,
      0xC24B8B70, 0xC76C51A3, 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,
      0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5, 0x391C0CB3, 0x4ED8AA4A,
      0x5B9CCA4F, 0x682E6FF3, 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208,
      0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2);

    var HASH = new Array(0x6A09E667, 0xBB67AE85, 0x3C6EF372, 0xA54FF53A, 0x510E527F, 0x9B05688C, 0x1F83D9AB, 0x5BE0CD19);

    var W = new Array(64);
    var a, b, c, d, e, f, g, h, i, j;
    var T1, T2;

    m[l >> 5] |= 0x80 << (24 - l % 32);
    m[((l + 64 >> 9) << 4) + 15] = l;

    for (var i = 0; i < m.length; i += 16) {
      a...