UILabel 자동 줄바꿈 (Line-break)
iOS검색에 자주 걸리는 UILineBreakModeWordWrap 는 더이상 사용되지 않는다.
lbLabel.lineBreakMode = NSLineBreakMode.byWordWrapping
검색에 자주 걸리는 UILineBreakModeWordWrap 는 더이상 사용되지 않는다.
lbLabel.lineBreakMode = NSLineBreakMode.byWordWrapping
우선 Hash, Mac, Signature 에 대해 알아 둘 필요가 있다.
https://rookiecj.tistory.com/368
hash, MAC vs Signature 차이점
hash나 MAC, Signature모두 hash를 기본으로 사용하지만 어떤부분이 다른지 살펴본다. 먼저 기본이 되는 hash는 메세지를 요약하는데 사용된다. byte[] data = "plain text".getBytes("UTF-8"); MessageDigest mes..
rookiecj.tistory.com
otp 생성을 위해 시간값과 특정 기기 아이디로 Mac (Message Authentication Code) 를 생성해 보자.
java code example..
com.j256.twofactorauth.TimeBasedOneTimePasswordUtil Maven / Gradle / Ivy
com.j256.two-factor-auth two-factor-auth 0.2 compile group: 'com.j256.two-factor-auth', name: 'two-factor-auth', version: '0.2' //Thanks for using https://jar-download.com libraryDependencies += "com.j256.two-factor-auth" % "two-factor-auth" % "0.2" //Than
jar-download.com
c code example..
https://github.com/cantora/avr-crypto-lib
cantora/avr-crypto-lib
mirror of avr-crypto-lib (http://code.nerilex.org/bg/avr-crypto-lib.git) - cantora/avr-crypto-lib
github.com
mkj/pihelp
A hardware watchdog for a Raspberry Pi using an AVR - mkj/pihelp
github.com
8비트 마이컴에서는 uint64_t 자료형을 사용할 수 없어 문제가 발생한다. 참고할 만한 문서.
https://stackoverflow.com/questions/33498371/wrong-sha-1-hash
Wrong SHA-1 hash
I'm planning to use AVR-Crypto's SHA-1 implementation for HMAC. However, I can't seem to generate the correct SHA-1 sum. For instance, if I call the function with the following unsigned char sh...
stackoverflow.com
c code example 에서 micom 을 위해 고쳐져야 하는 부분은
sha1_ctx_t 구조체 선언 부분을 아래와 같이 uint64_t -> uint32_t 로 수정해준다.
/*
typedef struct
{
uint32_t h[5];
uint64_t length;
} sha1_ctx_t;
*/
typedef struct
{
uint32_t h[5];
uint32_t length;
} sha1_ctx_t;
sha1_lastBlock 함수에서 주석 부분을 아래와 같이 수정해 준다.
uint8_t i;
/*
for (i=0; i<8; ++i)
{
lb[56+i] = ((uint8_t*)&(state->length))[7-i];
}
*/
for (i = SHA1_BLOCK_BYTES; state->length != 0; state->length >>= 8)
lb[--i] = (uint8_t)(state->length);
리눅스에서 컴파일 한 것과 다르게 뒤집어진(?) 결과가 나온다.
예를들어 리눅스에서 b696eeac 라면 8비트 마이컴(8051)에서는 acee96b6
함수를 아래와 같이 값을 그냥 리턴하도록 수정해준다.
uint32_t change_endian32(uint32_t x)
{
//return (((x)<<24) | ((x)>>24) | (((x)& 0x0000ff00)<<8) | (((x)& 0x00ff0000)>>8));
return x;
}
tensorflow 의 설치를 따라가다 보면 몇가지 문제에 부딛힐 수 있다.
https://www.tensorflow.org/install/pip?hl=ko
pip를 사용하여 TensorFlow 설치 | TensorFlow
TensorFlow 2.0 베타 사용 가능 tensorflow==2.0.0-rc1 - CPU만 포함하는 미리보기 TF 2.0 베타 빌드(불안정) tensorflow-gpu==2.0.0-rc1 - GPU를 지원하는 미리보기 TF 2.0 베타 빌드(불안정, Ubuntu 및 Windows) 사용 가능한 패키지 tensorflow - CPU만 포함하는 안정적인 최신 출시(Ubuntu 및 Windows) tensorflow-gpu - GPU를 지원하는 안정적인 최
www.tensorflow.org
1. 시스템에 Python 개발 환경 설치
64비트 Windows용 Python 3 출시를 설치합니다(선택적 기능으로 pip 선택).
=> 반드시 64비트용을 설치하여야 합니다.
(인터넷에 돌아다니는 설치가이드를 보면 다양한 라이브러리를 사용하기 위해서는 64비트 컴퓨터에서도 32비트용 파이썬을 설치하라는 이야기가 있습니다만... 32비트용을 설치하면 tensorflow 가 설치되지 않습니다.)
=> tensorflow 설치시 에러가 발생하는 경우 (파이썬 버전 문제)
https://devlog.jwgo.kr/2017/12/13/tensorflow-install-error/
=> pip3 install -U pip virtualenv 를 실행하지 말것.
아래를 먼저 실행하면.. virtualenv 가 설치됨. (위코드를 실행하면 pip.exe 가 사라질 수 있습니다.)
python -m pip install --upgrade pip
2. 가상 환경 만들기(권장)
=> 아래와 같이 변경하여 실행해주세요.
virtualenv --system-site-packages -p python3 ./venv
-> virtualenv --system-site-packages -p python ./venv
=> tensorflow 는 안정 버전을 설치해 주세요. rc 버전을 설치하면 예제들이 실행되지 않습니다.
pip install --upgrade tensorflow
tensorflow 안정 버전을 설치해야 구글의 프로그래밍실습에 있는 예제를 따라가기 쉽습니다.
| AttributeError: module 'tensorflow' has no attribute 'logging' (0) | 2019.09.25 |
|---|