목록전체 글 (1577)
py

binary / Hex / Octal / Unsigned / signed / ASCII 비교 Onlinex Hex converting으로 Hex 값으로 대응되는 값 확인할 수 있습니다. https://www.scadacore.com/tools/programming-calculators/online-hex-converter/ Online Hex Converter - Bytes, Ints, Floats, Significance, Endians - SCADACore Convert Hex values into Bytes, Ints, and Floats of different bit significance, Bit Endians, and byte significance for interfacing with unk..

정리 hardhat,truffle >> 프레임워크 개발환경 가나슈>> truffle에 배포하기 전 로컬에서 테스트해볼 수 있는 테스트 로컬 네트워크 geth>>이더리움의 한 노드를 추가할 수 있는 클라이언트 하이퍼 렛저 페브릭에서 피어를 띄우는 것을 geth가 해줄 수 있다. 즉 렛져의 피어하나하나가 geth에서는 노드 하나라고 생각하면 된다. 1) 컨테이너를 띄어서 geth로 노드를 만들면, 컨테이너마다 geth로 구성한 노드들끼리도 네트워크를 구성할 수 있는걸까요? >> 그렇다. 그렇게도 사용을 할까요? >> 아니다. >> 실제로는 테스트넷을 구성해서 위와 같이 작업하는걸 보려면 해도 되는데, 실사용은 그렇게 하지는 않는다. 실제로는 어느정도 규모가 있는 구성을 하면, 퍼블릭 네트워크를 쓰는건데, 하..

1. conda install -c conda-forge [패키지명] 수동설치 당연히 conda 혹은 miniconda라도 리눅스 서버에 있어야 합니다. 1-1. 경로에서 해당 라이브러리나 패키지명 검색하여 tar.bz 포맷 다운로드 https://anaconda.org/conda-forge/ conda-forge :: Anaconda.org conda-forge Organization created on Apr 11, 2015 A community-led collection of recipes, build infrastructure, and distributions for the conda package manager. anaconda.org 1-2. 다음 명령어로 설치 conda install pac..
https://yunmorning.tistory.com/30 Root 권한 없이 local에 CUDA 설치하기 Reference: https://stackoverflow.com/questions/39379792/install-cuda-without-root/51035145 공용 클러스터에서 작업을 하는 경우 system root에 설치된 CUDA와 현재 내가 필요한 버전의 CUDA가 일치하지 않.. yunmorning.tistory.com 공용 클러스터에서 루트 권한 없이 CUDA 버전 변경하기 공용 클러스터에 작업하는 경우 system root에 설치된 CUDA와 현재 환경에서 필요한 CUDA버전이 다를 경우 주로 발생. 그러므로 공용 클러스터의 스펙을 초기에 공유하고, 동일한 환경 셋업이 왠만하면 추..
Nexus Repository 란? Nexus는 메이븐에서 사용할 수 있는 Repository다. 외부에서 dependency를 수고를 덜고, local nexus(cache)로 사용함으로써 빠르게 라이브러리를 끌어올 수 있고, 개발팀에서 사용하는 공용 라이브러리를 local nexus에 배포해서 팀간에 공유할 수 있다. Sources [1] Nexus란 https://dev-youngjun.tistory.com/105 [2] Nexus Repository란 https://m.blog.naver.com/qhdqhdekd261/221827574154 [개발지식] Nexus Repository 란? 메이븐을 사용하면 pom.xml을 통해 jar 파일을 maven repository에서 다운받아오는 것에 익숙..
하나 궁금한게 내가 만든 토큰으로 receive받고 싶을 때 어떻게 해야 하나요? 리믹스 IDE의 가나슈 네트워크 예제의 OreOrecoin에서 receive()는 이더만 받을 수 있고, 토큰으로 receive()하고 싶을 경우, 오레오레 코인을 그대로 사용한다음에 transfer 함수를특정 조건에 발생했을 때, 호출해주는 것을 구현하면 된다. DID > 증명서 인증서 발급할 때, DID가 적합하진 하이퍼랫져 패브릭으로도 충분히 가능하다. https://www.w3.org/TR/did-core/ Decentralized Identifiers (DIDs) v1.0 This section is non-normative. This section contains a variety of security consi..

하이퍼랫져 패브릭 2.2버전 1.4와 2.2가 조금 다르지만, 일단 전반적인 코드 프로세스는 비슷하므로 크게 신경쓰지 않아도 상관없다. 예제2 temate: 스터디원 구하고 평가하는 등의 서비스 definition commit = 승인 요청을 보내고 승인이 되면, 네트워크에 배포하는 형태로 작성되어 있다. 에러는 로그로 관리하는게 편하다 앱클라이언트 반환값도 어느정도 404, 200 정도와 같이 일정부분 정형화해서 관리하는게 편하다. 키들이 포획되면, 항상 result가 날아올 것이다. 라는 것을 정형화해서 알 수 있으므로 처리가 편하다. (개발하든 테스트하든) 여기서 정책이란 endoursment policy (어떤 레포짓을 갖고 있는 identity가 이 체인코드를 보증하는지 여부) 정책: org1에..
https://wikidocs.net/22651 3-빅데이터 에코시스템 빅데이터는 수집, 정제, 적재, 분석, 시각화의 여러 단계를 거칩니다. 이 단계를 거치는 동안 여러가지 기술을 이용하여 처리되고, 이 기술들을 통틀어 빅데이터 에코 시스템( ... wikidocs.net

[1] Anaconda Mirror 미러링 공식 문서 https://server-docs.anaconda.com/en/latest/admin/mirrors.html Mirrors — Anaconda 6.2.0 documentation Mirrors Anaconda Server enables you to create a local copy of a repository so users can access approved software components from a centralized on-premise or cloud location. Note In order to mirror, you must first create a channel for your organization to u server-doc..
http://golang.site/go/article/4-Go-%EB%B3%80%EC%88%98%EC%99%80-%EC%83%81%EC%88%98 예제로 배우는 Go 프로그래밍 - Go 변수와 상수 1. 변수 변수는 Go 키워드 var 를 사용하여 선언한다. var 키워드 뒤에 변수명을 적고, 그 뒤에 변수타입을 적는다. 예를 들어, 아래는 a 라는 정수(int) 변수를 선언한 것이다. var a int 변수 선언문에 golang.site

프로세스 요약 예제 1.4 버전의 lucky draw예제 (1) 하드웨어 및 리소스 셋업 1. vmware에 이미지 올려서 실행 2. dev 폴더 생성 > surprize 예제 깃 클론 (2) 네트워크단 cd network ./genesis.sh ./start.sh (3) 체인코드단 배포 :~/dev/surprize/chaincode/luckydraw$ chmod +x cc.sh bstudent@bstudentvb:~/dev/surprize/chaincode/luckydraw$ ./cc.sh (4) 애플리케이션단 유저 등록 ~/dev/surprize/application$ node enrollAdmin.js ~/dev/surprize/application$ node registerUser.js (5) 테..

1. vmware에 다음 이미지 실행 ubuntu2004_fabric.ova 로그인: bstudent / sys1234 2. VSC에서 CTRL+F1 3. config 열어주기 4. 다음 입력 Host VM HostName localhost User bstudent 4. remote development (extension으로 없으면 설치) 5. dev 폴더 생성 후 다음 git clone https://github.com/DSDanielPark/surprize/tree/master/network 6. 다음 차례대로 쉘 스크립트 실행 generate.sh start.sh teardown.sh 7. 다음 위치의 체인코드 확인 디버깅 Cannot run peer because cannot init crypt..

이더리움 네트워크는 이전 리믹스 배포, node.js, 가나슈 등등이다. (이전 글 확인) 하이퍼랫져 패브릭 기준으로 블록체인을 연동한 웹서비스 구현 설명 개발환경 설정 블록체인 연동한 웹서비스 == 기존 웹 서비스 + 블록체인 1. 네트워크 1-1. 준비물 1 crpyto-config.yaml: 피어 몇개고 org 몇개고, 피어 안에 유저 몇명인지 적는다. cryptogen: crpyto-config.yaml을 참조해서 crypto-config 생성하는 프로그램 crypto-confing 폴더: 인증을 위해서 필요한 내용들이 담긴 폴더 네트워크 컴포넌트 하나하나의 인증 준비물들이 들어간다. 구성요소들이 많이 있다. 피어 오더러 등등, 하이퍼 랫져 패브릭은 이 기관들이 다 인증된 정보(CA)가 있어야 한..

CONTRACT 배포자가 소유자로 된다. 실습코드 전체: https://github.com/ch-4ml/ethereum-template/blob/main/contract/ore-ore-coin/OreOreCoinCrowdSale.sol GitHub - ch-4ml/ethereum-template Contribute to ch-4ml/ethereum-template development by creating an account on GitHub. github.com // SPDX-License-Identifier: MIT pragma solidity ^0.8.12; // 소유자 관리용 계약 contract Owned { // 상태 변수 address public owner; // 소유자 주소 // 소유자 ..

https://happyhackingkb.com/jp/download/ Happy Hacking Keyboard | ダウンロード | PFU 株式会社PFUがお届けする高性能コンパクトキーボード、HHKB・Happy Hacking Keyboard のダウンロードページです。 happyhackingkb.com 키 매핑 변환도구

시스템 정보 확인 uname -a #서버에 붙은 커널정보 dmesg #커널 정보 에러 출력, 커널 #cpu정보 dmidecode -t bios #bios 정보 dmidecode -t system #시스템 모델명 dmidecode -t processor #프로세서 cat /proc/cpuinfo #cpu 정보 lscpu #NUMA정보등 디테일 확인 dmesg | grep CPU #메모리 정보 dmidecode -t memory #실제 시스템에 물리적으로 존재하는 메모리 정보 cat /proc/meminfo #memory 정보 dmesg | grep momory #디스크 정보 df -h #네트워크 정보 lspci | grep -i ether ethtool -g eth0 #Ring Buffer 체크 ethto..
아나콘다 환경설정 관련 official doc https://docs.conda.io/projects/conda/en/stable/commands/info.html 1. 프록시 서버란? https://blog.naver.com/PostView.naver?blogId=dktmrorl&logNo=222410286839 [IT정보] 프록시 서버(Proxy Server) 개념 프록시 서버(Proxy Server) 개념 프록시 서버(Proxy Server)는 클라이언트(Client)가 자신을 통해서 ... blog.naver.com 2. conda에서 channel이란? conda를 통해 패키지 관리 및 가상환경 관리를 할 때, channel을 틍해 어디서 패키지를 가져와 설치할지를 지정할 수 있다. chnnel..
https://soo0100.tistory.com/1724 Getter,Setter 함수란 https://soo0100.tistory.com/1723 모델 클래스 란? 모델 클래스란, 실제의 형태를 클래스 형태로 만드는 것을 말한다. 즉, 클래스로 만들어서 데이터를 저장하고 가져오는 역할을 하게 된다. 예를 들어 날 soo0100.tistory.com

실습코드: ore-ore-coin https://github.com/ch-4ml/ethereum-template/tree/main/contract/ore-ore-coin GitHub - ch-4ml/ethereum-template Contribute to ch-4ml/ethereum-template development by creating an account on GitHub. github.com 토큰: 다른 코인을 기반으로 한 가상화폐 코인: 메인넷이 있는 토큰 토큰은 계정(EOA)에 연결되어 관리 임의의 양을 임의의 계정에 전달가능하며, 화폐보다는 조금더 추상적 이더리움 공식레포에 토큰 생성 코드가 있고, 오픈 제플린의 ERC-20에 잘 기재되어 있음 토큰의 필수 속성 오픈제플린 ERC-20 체크하..
linux => cls zsh => clear putty로 접속할 경우, 다음 파일 생성으로 clear입력시 printf '\033[3J'가 프린트 되어 터미널을 비울 수 있다. $ sudo vi /usr/local/bin/cls -- cls 내용 #!/bin/bash clear printf '\033[3J' --cls 내용 끝 저장 $ sudo chmod a+x /usr/local/bin/cls

1. 3.4 버전 이하에서 pathlib이 없을 경우? >> 해결1: pathlib 설치 >> 해결2: os.path의 적절한 코드로 수정 만약 pathlib 모듈이 없는 버전의 파이썬을 사용하고 있다면 pathlib 대신에 os.path의 적절한 메서드를 통해 동일한 코드로 구현할 수 있습니다 2. os.path와 pathlib의 차이점 os.path: 문자열 수준의 저수준의 경로 조작 pathlib: 고수준의 시스템 수준의 경로 조작 pathlibPython 3.4 이후로 더 현대적인 방법입니다. pathlib에 대한 문서에는 "문자열에 대한 저수준 경로 조작의 경우 os.path 모듈을 사용할 수도 있습니다."라고 나와 있습니다. 경로 결합에는 큰 차이가 없지만 다른 경로 명령은 pathlib이 o..

시스템 배포판과 버전을 확인하는 가장 범용적인 방법 $ cat /etc/issue ## s 옵션은 커널 이름을 출력합니다 $ uname -s Linux ## o 옵션은 운영체제 이름을 출력합니다. $ uname -o GNU/Linux ## r 옵션은 커널의 릴리스 버전을 출력합니다. $ uname -r 5.10.25-linuxkit ## m 옵션은 시스템의 하드웨어 아키텍처를 출력합니다. $ uname -m x86_64 $ cat /etc/os-release 출처 https://www.lainyzine.com/ko/article/how-to-check-your-linux-distribution-and-version/ 리눅스 배포판 및 버전 확인하는 방법 현재 사용하는 리눅스 시스템의 배포판 및 커널 정보..
1. 개요 The Qt Company[1]에서 개발한 오픈 소스 C++ 개발 프레임워크. ('큐트'라고 읽는다.) C++와 QML이라는 자체 스크립트 언어를 기반으로 한다. 2022년 4월 기준 현재 최신 버전은 Qt 6.2.4와 Qt Creator 7.0.0이다. https://download.qt.io/archive/qt/ "Write once, compile anywhere"를 광고 문구로 사용하고 있는 C++ 크로스 플랫폼 프레임워크로서 국내외에서 Windows, Linux, mac등을 지원하는 데스크탑 응용프로그램과 자동차를 비롯한 많은 임베디드 장치에서 오픈소스 또는 상업용 프로젝트에 활용되고 있다. 해외에서는 특히 유럽쪽에서, 국내에서는 주로 중견(자본력이 어느정도 있는) 기업 이상에서 자동..

PoW를 PoS를 쓰겠다 > 진입장벽 낮아지고 > 네트워크 유지하기 위한 필요 노드들이 증가된다 > 이 노드들은 네트워크를 유지하는데 도움을 주는 노드들을 의미 > 전체적인 네트워크의 힘을 실어줄 수 있다. 비콘 체인: 패러럴하게 PoS체인이 유지되고 있다. pos pow를 연동해서 잘 작동한다. 샤딩이 잘 작동한다 그러면 이 두개를 연결해서 업데이트를 하겠다라고 청사진을 제시하였음 phase 0: 비콘체인과 캐스퍼 - 샤드 체인이란 병렬적으로 처리하는 체인을 여러개 두는 것을 의미한다. 메인 비콘체인이 있고, 샤드 체인이 그 병렬적으로 존재한다. 매우 많다. 이 샤드체인과 메인 체인을 비콘체인이 함께 관리한다. 그래서 이것을 Casper Proof of Stake 프로토콜로 관리한다. 최종결정(fina..

https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol GitHub - OpenZeppelin/openzeppelin-contracts: OpenZeppelin Contracts is a library for secure smart contract development. OpenZeppelin Contracts is a library for secure smart contract development. - GitHub - OpenZeppelin/openzeppelin-contracts: OpenZeppelin Contracts is a library for secure smart co..
[1] https://tech.ssut.me/start-python-documentation-using-sphinx/ Python 문서화, Sphinx로 아주 간단하게 시작해보기 들어가기 전에: 이 글은 제목대로 "아주 간단하게 시작"하는 한 번도 Python에서 문서화를 해본 경험이 없는 초보자를 위한 글입니다. 어떤 코드든 문서화에서 오는 이점은 상당히 많습니다. 당 tech.ssut.me [2] https://hooni-playground.com/1101/ Sphinx / Read-the-Docs를 통한 Python Project 문서화 | Hooni's Playground 개발과 문서가 따로노니 신경쓸 것이 두 배로 생긴다. 이에 소스코드로부터 개발문서를 만들어보기로 했다. Sphinx란 Pyth..
[1] github repository로 pip install 만들기 https://lsjsj92.tistory.com/592 github repository로 python pip install 만드는 방법 정리 포스팅 개요 이번 포스팅은 Python의 패키지를 관리해주는 pip install에 대해서 정리합니다. 그 중 github(혹은 gitlab 등)를 이용해서 pip install을 하는 방법에 대해서 정리를 해보려고합니다. 이렇게 git lsjsj92.tistory.com [2] https://stackoverflow.com/questions/32688688/how-to-write-setup-py-to-include-a-git-repository-as-a-dependency How to writ..

출처: https://dojang.io/mod/page/view.php?id=2454 파이썬 코딩 도장: 핵심 정리 데코레이터 데코레이터는 함수를 수정하지 않은 상태에서 추가 기능을 구현할 때 사용합니다. 먼저 데코레이터는 호출할 함수를 매개변수로 받고, 호출할 함수를 감싸는 함수 wrapper를 만듭니다 dojang.io 핵심 정리 데코레이터 데코레이터는 함수를 수정하지 않은 상태에서 추가 기능을 구현할 때 사용합니다. 먼저 데코레이터는 호출할 함수를 매개변수로 받고, 호출할 함수를 감싸는 함수 wrapper를 만듭니다. 그리고 wrapper 함수 안에서는 매개변수로 받은 func를 호출하고, 함수 바깥에서는 return을 사용하여 wrapper 함수 자체를 반환합니다. 데코레이터를 사용할 때는 호출할..

프로토콜(객체 지향 프로그래밍) - 컴퓨터 과학의 프로토콜과는 살짝 다를 수 있는 개념(discussion 존재) - 프로토콜은 다양한 특정 의미를 가진 특정 객체 지향 프로그래밍 언어에서 사용하는 용어로, 다른 언어에서는 이를 인터페이스 또는 특성이라고 합니다. - 그렇지 않으면 일반적으로 "프로토콜"은 통신 프로토콜과 유사하며, 호출자와 개체 간의 상호 작용 체인을 나타냅니다. 객체지향 언어 종류 "프로토콜"이라는 용어를 사용하는 언어는 다음과 같습니다. 클로저 비약 자바 8 로그토크 오브젝티브-C [1] 빠른 파이썬 [2] Protocol (object-oriented programming) - Wikipedia Protocol is a term used by particular object-ori..

선수지식 1. 알고리즘 https://en.wikipedia.org/wiki/Algorithm Algorithm - Wikipedia From Wikipedia, the free encyclopedia Jump to navigation Jump to search Sequence of instructions to perform a task Flowchart of an algorithm (Euclid's algorithm) for calculating the greatest common divisor (g.c.d.) of two numbers a and b in locations named en.wikipedia.org 2. 검색 알고리즘 https://en.wikipedia.org/wiki/Search_a..