본문 바로가기

전체 글

(290)
클라이언트에서 영문 쿼리 백엔드단에서 한글로 받는 방법 클라이언트에서 영문으로 쿼리명을 넘겨주고, 서버단에서는 db에 해당 이름이 한글로 저장되어 있는 경우가 있었다. 이런 경우에는 서버에서 어떻게 처리하면 좋을까? 예를 들어 클라이언트에서 banana를 쿼리로 넘겨준다면, 서버단에서는 db에 해당 값이 한글로 저장되어 있으므로 한글로 변환이 필요하다. * 기존에는 서버단 > 클라이언트단으로 쿼리를 보낼 때 한글이름으로 보냈었는데, 클라이언트단에서 utf-8 인코딩 에러가 발생하는 바람에 쿼리에서 해당 단어가 깨져서 나오는 현상이 있었다. 일단 클라이언트에서 넘어오는 한글 이름을 enum으로 받자. export const GangVoteGradeToKo: { [index:string]: string } = { banana: '바나나', apple: '사과' ..
zokrates library 간단 사용기(template,signal) 들어가기에 앞서, zokrates란? zokrates는 Python기반의 ZKP 라이브러리로, privacy 보호와 더불어 컨트랙트의 보안을 강화하는데 사용된다. circom이라는 언어를 사용하여 작성된 스마트 컨트랙트를 처리한다. 1) remix에서 zokrates 라이브러리 설치 ㄴ오늘 remix에서 라이브러리를 처음 설치해보았다. 2) 예제 코드 python처럼 def 함수를 사용했다. zokrates에서는 field를 사용하여 circuit을 설계하고 계산을 수행한다. field는 circuit의 입력 출력 중간값으로 사용될 수 있다. def main(field a, field b) -> field { field result = a + b; return result; } a,b가 field값이며 ..
zkSNARKs란? (circom-zkSNARKs의 관계) * 해당 강의는 https://learn.0xparc.org/materials/circom/learning-group-1/circom-1 을 듣고 정리한 글입니다. Circom Workshop 1 | ZK Learning Resources Description learn.0xparc.org 함수 입력값 : x1,x2,x3,x4 OUT = f(x) = (x1+x2) * x3 - x4 여기서 zkSNARKs는 x1,x2,x3,x4 라는 비밀을 알고 있는데, OUT의 연산 결과에 필요한 값들이다. 위에서 튜플()의 값이 정확히 무엇인지 몰라도 결과값을 증명할 수 있다. 위에서 function의 input이 x1,x2,x3,x4 라고했고, OUT의 식이 OUT = f(x) = (x1+x2) * x3 - x4 로..