opentutorials.org Project

기술

사용자가 로그인을 위해서 아이디나 비밀번호를 서버로 전송할 때 웹브라우저와 오픈튜토리얼스의 서버는 SSL(HTTPS) 방식으로 통신을 합니다. SSL은 웹브라우저에서 데이터를 전송할 때 데이터를 암호화하는 기술로 안전한 정보 전달 수단입니다. 공격자가 웹브라우저와 서버 사이의 데이터를 가로채도 공격자는 이해할 수 없는 문자만을 볼 수 있습니다.

또한 사용자의 정보는 로그인을 위해서 필요한 정보인 이메일과 비밀번호, 닉네임과 프로필 이미지만을 받고 있습니다. 필요 이상의 사용자 정보를 저장하는 것은 사용자도 원하지 않고 저희도 원하지 않는 것입니다. 이 중에서 가장 민감한 사용자의 비밀번호는 가장 안전한 암호화 방식 중의 하나로 평가 받고 있는 Brcypt 방식으로 저장되고 있습니다. 예를들어 사용자의 비밀번호가 111111이라고 할 때 이 값은 134!@#%324!%!^3456#$3$ 와 같은 형식으로 저장됩니다. 그렇기 때문에 오픈튜토리얼스의 엔지니어도 사용자의 실제 비밀번호를 알 수 있는 방법이 없습니다. 오픈튜토리얼스의 정보가 유출되는 최악의 상황에서도 최소한 사용자의 비밀번호가 그대로(111111) 노출되지 않습니다.

오픈튜토리얼스에 저장되는 비공개 글은 암호화되지 않은 방식으로 서버에 저장됩니다. 따라서 데이터가 유출되면 비공개 데이터도 유출될 가능성이 있습니다. 또 이론적으로는 내부 개발자들에 의해서 비공개글이 열람될 수 있습니다. 저희는 데이터가 외부에 유출되지 않도록 하기 위해서 다양한 보호수단을 적용하고 있습니다. 그리고 개발자가 사용자의 데이터에 접근하는 것을 엄격하게 차단하고 있습니다. 향후에 비공개글도 암호화해서 내부 엔지니어들이 비공개 컨텐츠를 열람 할 수 있는 가능성을 완전히 차단하려고 합니다. 동시에 사용자도 시스템의 이러한 특성을 이해하고 은폐해야 하는 데이터를 비공개글로 저장하지 않기를 부탁드립니다. 사실 이러한 원칙은 오픈튜토리얼스 뿐 아니라 다른 서비스에서도 마찬가지입니다.

오픈튜토리얼스는 Amazon Web Services(AWS)를 사용하고 있습니다. 사용자가 업로드한 파일은 AWS의 S3에 저장됩니다. S3는 AWS의 서비스 중의 하나로 업로드된 파일을 최대 3개 이상의 복제본으로 만드는데, 복제본들은 완전히 독립된 건물에 보관되고 있기 때문에 하나의 건물이 완파되도 나머지 2개 이상의 복제본을 사용할 수 있습니다. AWS 측에 따르면 S3의 신뢰도는 연간 99.999999999%이고 이 수치는 1만개의 파일을 저장 했을 때 1천만년에 하나의 파일을 잃어버릴 수 있는 수준입니다. 이것은 과학적으로 산출된 수치이고 법적 계약사항입니다.

또 사용자의 데이터는 AWS의 RDS라는 서비스를 통해서 제공되고 있습니다. RDS는 데이터를 보관하기 위한 서비스입니다. 여기서의 데이터란 토픽이나 댓글과 같은 텍스트 정보들을 의미합니다. 이 정보를 안전하게 보관하기 위해서 오픈튜토리얼스는 RDS의 다중 가용성 존을 이용하고 있습니다. 다중 가용성 존을 이용하면 사용자가 입력한 데이터가 완전히 독립된 두개의 건물에 저장됩니다. 하나의 건물이 불능 상태가 되면 자동으로 다른 건물에 보관된 데이터가 사용되기 시작합니다. 또한 사용자의 데이터는 일주일 단위로 백업이 되고 있습니다. 문제가 발생하는 경우 최대 1주일분의 데이터를 복구 할 수 있습니다.

댓글

서비스에 오류가 있는 경우 opentutorialsorg@gmail.com으로 연락 부탁드립니다. 

댓글 본문
작성자
비밀번호
  1. 레인메이커
    오픈튜토리얼스의 운영 원칙에 깊이 공감합니다.
  2. jblessme
    KAIST 의 분위기가 느껴지네요..
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기