5. 보안 측면 고려사항
소프트웨어를 원하는 방식으로 작동되도록 만드는 것은 어렵지 않으나, 다른 사람이 원하지 않는 방식으로 작동하지 않도록 확인하는 것은 매우 어렵다.
솔리디티에서는 토큰이나 심지어 더 가치있는 것들을 다루기 때문에 이러한 문제는 특히 중요하다. 더해서 모든 스마트 콘트랙트는 공개적으로 실행되고 대부분의 소스코드 또한 누구나 확인 할 수 있는 경우가 많다.
물론 보안에 얼마나 신경을 써야 하는 지는 상황에 따라 다르다. 웹 서비스 또한 대중(악의적인 공격자를 포함한) 누구나 접근할 수 있고 심지어 오픈소스인 경우도 있다. 만약 웹 서비스에 자잘한 정보들만 저장한다면 보안 문제에 크게 신경쓰지 않아도 되지만, 웹 서비스를 통해서 은행 계좌를 관리한다면 조금 더 조심해야 한다.
이 장에서는 조심할 문제들과 일반적인 보안관련 패턴들을 다루지만 완벽한 것은 아니다. 명심할 것은 스마트 콘트랙트에 아무런 버그가 없더라도, 컴파일러나 플랫폼 자체에는 버그가 있을 수 있다는 점이다.