안녕하세요. 요기요 R&D Center에서 FE M&R 팀 리드 및 FE Developer로 일하고 있는 고진영입니다.요기요 사장님 앱에서는 주문 리스트를 호출하는 API에 주문 리스트가 없을 경우 status code를 400으로 반환하고 있었습니다. 400으로 반환하는 이유가 너무 궁금해서 BE 개발자분들에게 질문했습니다.Q. 오류가...
기술 블로그 모음
국내 IT 기업들의 기술 블로그 글을 한 곳에서 모아보세요


기업은 생성형 AI 적용을 위해 전체 비즈니스 관점에서 자동화할 영역을 우선적으로 정의하고, 이후 해야 할 일을 디테일하게 설계해야 합니다. 결국은 도메인 지식과 기술 전문성을 보유한 인력이 함께 고민해야 하는 일이며, 삼성SDS와 같이 B2B 사업 경험이 많은 IT 서비스 기업과 현장에서 협업하며 답을 찾는 것이 중요합니다. 삼성SDS는 기업의 복잡...

원티드랩 데이터 마트 — 설립기들어가며데이터 마트란 운영상 생성된 데이터를 변환, 집계하여 분석을 위해 운영 데이터를 가공한 데이터셋을 의미합니다. 조직의 성공을 위해 데이터 기반으로 의사결정을 주도한다는 점을 고려할 때, 운영 데이터보다 더 중요하거나 “중심”이 되는 정보라고 생각할 수 있습니다.어떻게 만들었나?먼저 원티드랩에 입사했을 때 데이터팀에...

가트너 조사에 따르면 2022년에 직원의 41%가 IT의 통제 범위를 벗어나 기술을 획득, 수정 또는 생성했으며, 2027년에는 이 수치가 75%까지 높아질 전망이다. 섀도우 AI는 보안에 막대한 영향을 미칠 수 있습니다.

전통적인 오프라인 리테일 업체는 어떻게 e-Commerce 기반의 데이터 전략을 오프라인 유통 채널에서 동일하게 운영할 수 있는지 궁금해합니다. 성공적인 e-Commerce 전략으로 디지털 공간을 장악하는 기업들은 대부분 고객 데이터를 효과적으로 활용하고 있습니다. 사실 리테일 기술의 빠른 발전 속도로 인해 디지털 경험을 쇼핑몰, 쇼핑센터 또는 전통적...

안녕하세요, 네이버페이 금융인프라개발 임지선 입니다.공개키 암호화의 개념과 거기에서 사용되는 개인키를 안전하게 보관하기 위한 키 암호화 방식에 대해 소개합니다.공개키 암호화단방향 암호화단방향 암호화의 경우 어떠한 해시 함수를 활용하여 암호화만 가능하고 복호화가 불가능합니다. 사이트의 비밀번호를 저장하는 등의 활용이 가능합니다. 사이트에서는 비밀번호의 해시값만 저장하고, 이는 복호화가 불가하기 때문에 비밀번호를 분실할 경우 새로운 비밀번호를 설정해야 합니다.사용 알고리즘 예시: SHA-256 해시 알고리즘항상 256비트의 고정된 사이즈로 출력되는 해시함수. 단방향으로 암호화만 가능하고, 입력값으로 출력값을 유추하거나 출력값을 다시 복호화 할 수 없습니다. 출력속도가 매우 빠른것이 장점으로, 블록체인 등에서 사용됩니다.비밀키 암호화비밀키 암호화는 하나의 비밀키로 암복호화를 하는 방법입니다. 계산 속도가 빠르며, 암호화와 복호화에 동일한 키를 사용할 때의 문제점은, 어떠한 암호화된 문서를 전달하기 위해서는 어떠한 방식으로든 비밀키를 전달해야 한다는 것입니다. 비밀키만 있다면 누구든지 복호화를 할 수 있기 때문에 유출될 경우를 대비해야 할 것입니다.사용 알고리즘 예시: AES키의 길이와 관계없이 128비트의 고정된 블럭 단위로 쪼개어 암호화를 진행합니다 (이때 128비트보다 크기가 작은 블럭이 발생할 경우 임의의 값으로 채우는 Padding으로 해결). 블록 암호 방식 중 CBC (Cipher Block Chaining)를 예시로 확인하면, 128비트로 블럭을 나눈 후 각 블럭을 앞 블럭의 Cipher Text와 XOR 연산을 수행하여 암호화하는 방식입니다. 이때, 가장 첫 블럭은 앞 블럭이 없으므로 IV (Initialization Vector)로 계산합니다.이미지 출처: https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation이 외에도 AES-ECB (Electronic Code Book), AES-CTR (Counter) 방식이 있습니다. 행렬을 이용한 자세한 계산방법은 생략.공개키 암호화공개키 암호화는 암복호화에 사용하는 키가 다른 암호화 방식입니다. 누구나 사용할 수 있는 하나의 키를 공개키, 나머지 하나의 키를 개인키라고 합니다. 공개키를 이용해 암호화 한 후 개인키를 이용해 복호화 할 수도, 개인키를 이용해 암호화한 후 공개키로 복호화 할 수도 있습니다.예시1: 신원 증명A가 개인키를 이용해 어떤 문서를 암호화공개키를 공개해 B가 A의 개인키로 문서를 복호화.이를 통해 암호화된 문서가 변질되지 않았으며 발행인이 A임을 증명합니다.예시2: 안전한 데이터 전송A가 공개되어 있는 B의 공개키를 이용해 암호화암호화된 내용은 B의 개인키로만 복호화 가능.비밀키를 전달하지 않으면서 안전하게 암호화된 내용을 전달할 수 있습니다.가장 대표적인 공개키 암호화 사용으로는 HTTPS에 사용되는 SSL/TLS 인증서가 있습니다. 브라우저는 인증서를 확인한 후 세션키를 공개키로 암호화해 전송합니다. 서버는 개인키를 이용해 세션키를 얻고 세션키로 메시지를 암호화합니다. 공개키 암호화의 경우 비밀키 암호화보다 느리고 계산이 복잡하므로 세션이 만료되기까지 브라우저와 서버는 세션키를 사용하여 암복호화를 합니다.사용 알고리즘 예시1: RSA소인수분해의 어려움에 기반한 알고리즘으로, 두개의 큰 소수를 활용해 공개키와 개인키를 생성합니다. 상세한 방법은 아래와 같습니다.두개의 소수 p, q를 곱하여 N을 만든다.φ(n) = (p — 1)(q — 1) 보다 작은, φ(n)와 서로소인 정수 e를 찾는다.de ≡ 1 (mod φ(n)) 인 정수 d를 찾는다.이때 p와 q를 이용한 공개키는 <N, e>, 개인키는 <N, d> 입니다.RSA에서의 암복호화공개키 암호화에서 중요한 것은 개인키의 보안입니다. 개인키가 유출될 경우 실효성을 잃게 되기 때문입니다. 개인키의 소유 당사자만 키를 소유하는 경우 개인키의 분실시 복구할 수 있는 방법이 없습니다. 개인키의 보안을 유지하며 관리하기 위한 방법에는 몇가지 대표적인 방식이 있습니다.MPC (Multi Party Computation, 다자간 연산)이미지 출처: https://www.pentasecurity.com/solutions/blockchain/mpc-solution/MPC는 이름 그대로 비밀로 하고자 하는 값 (개인키)을 여러 end point (3개 이상)로 나누어 각자의 입력값으로 연산을 수행하는 방식입니다. 이때 각 end point는 전체 비밀 값을 알 수 없기 때문에 개인키가 유출될 수 있는 단일 실패점 (SPOF, Single Point Of Failure. 전체 시스템 중단을 야기하는 약점)을 제거합니다.MPC vs Multi-Sig이미지 출처 : https://scalablesolutions.io/news/cryptocurrency-exchange-hacks/다중 서명 (Multi-Sig)은 키를 여러곳에 나누어 저장한다는 점에서 MPC와 비교될 수 있습니다. MPC가 키 자체를 쪼개어 각각 연산을 수행한다면, Multi-sig는 키를 여러개 생성하여 서명하는 방식입니다.각 end point의 오프체인으로 서명을 진행하는 MPC와 달리 Multi-Sig 방식은 여러 키를 하나로 모아 하나의 온체인에서 서명을 진행합니다. MPC와 비교하였을 때 키 분실과 권한 변경에 유연하지 못하고, 키 유출 위험이 존재합니다. (오프체인과 온체인에서 오는 차이)이미지 출처: https://www.fireblocks.com/blog/mpc-vs-multi-sig/SSS (Sharmir’s Secret Sharing)SSS는 키의 독점을 방지하는 비밀공유방식으로 아래 두가지 조건을 만족합니다.하나의 Secret을 n개로 나누어 분산해 저장한다. (share)k개 이상의 Share를 이용해야 Secret을 복원할 수 있다.이를 만족하기 위해 SSS는 “서로 다른 k개의 점을 지나는 (k-1)차 다항식은 유일하게 존재한다.”는 명제를 기반으로 합니다.예를 들어, 2차 다항식 y = ax² + bx + c에서 a, b, c를 구하기 위해서는 3개의 점이 필요하다. 다시 말해 n차 다항식의 계수를 구하기 위해서는 n + 1개의 점이 필요한 것입니다. SSS에서는 이를 활용하여 상수항 S를 가지는 임의의 k-1차 다항식을 생성하고, k개의 점(share)을 이용해 다항식을 복원해 S를 구합니다.TSS (Threshold Signature Scheme)위의 SSS 방식에서의 허점은, 누가 처음 키(S, Secret)를 분배할 것인가? 입니다. 최초의 다항식을 생성하기 위해서는 누군가 S의 원형을 알고 있어야 하기 때문입니다. TSS는 여기에서 DKG (Distributed Key Generation, 분산 키 생성) 방식을 활용합니다. DKG는 다수의 참여자가 S 값을 모르는 상태에서 share를 생성할 수 있도록 합니다.위 예시로 확인해보면 도출된 (1, a=19), (2, b=23), (3, c=27)로 y = 4x + 15, 즉 S 값 (y절편)이 15임을 계산할 수 있지만 각 참여자는 이를 확인할 수 없습니다.SSS방식에서는 S의 복원시에도 동일한 문제가 발생합니다. 단일 시스템이 S를 재조립함으로 S의 원형을 확인할 수 있기 때문입니다. TSS는 이를 임계값 서명 (Threshold Signing)을 이용해 해결합니다. 임계값 서명은 여러 서명에서 단일 디지털 서명을 생성하는 방식으로 S의 복원 없이도 서명이 가능하도록 합니다.여기까지 암호화의 여러 종류와 MPC에 대해 간단하게 정리해보았습니다. 읽어주셔서 감사합니다.참고자료https://en.wikipedia.org/wiki/Block_cipher_mode_of_operationhttps://blog.naver.com/mage7th/222456495143https://scalablesolutions.io/news/cryptocurrency-exchange-hacks/https://www.pentasecurity.com/solutions/blockchain/mpc-solution/https://www.fireblocks.com/blog/mpc-vs-multi-sig/https://academy.binance.com/en/articles/threshold-signatures-explainedhttps://medium.com/atomrigslab/%EC%B4%88%EB%B3%B4%EC%9E%90%EB%8F%84-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-%EC%89%AC%EC%9A%B4-secure-mpc-%EA%B8%B0%EB%B0%98-multi-party-ecdsa-%EC%9D%B4%EC%95%BC%EA%B8%B0-d36aeb9e5ec7https://en.wikipedia.org/wiki/Shamir%27s_secret_sharinghttps://en.wikipedia.org/wiki/Distributed_key_generationetc. (관련해서 추천드리는 유튜브 영상들)AES : https://youtu.be/C4ATDMIz5wc?si=30ckR0aOVcqgNDwcRSA 원리 : https://youtu.be/vcODg8X4OMQ?si=rfH8EtDP7q1FYpnn공개키 암호화와 키관리 (MPC) was originally published in NAVER Pay Dev Blog on Medium, where people are continuing the conversation by highlighting and responding to this story.
위기에서 기회를 만들어 낸 후기 서비스 이야기

하이퍼오토메이션은 의사결정 인텔리전스의 새로운 시대를 열어가고 있습니다. 데이터의 확보부터 분석, 의사결정에 이르는 모든 프로세스에서 혁신적인 변화를 가져오며, 기업이 더 스마트하게 운영되고 경쟁에서 선도하는 데 도움을 줄 것으로 기대됩니다. 앞으로의 비즈니스 환경에서는 하이퍼오토메이션과 의사결정 인텔리전스가 긴밀히 결합하여 비즈니스의 지속적인 발전을...
안녕하세요. 뱅크샐러드 iOS 챕터의 김봉균입니다. 최근 iOS 챕터는 뱅크샐러드 iOS…

디셉션 시스템은 기업의 위치와 산업을 기반으로 사이버 위협 인텔리전스를 분석하고 종합해 특정한 적대적 집단이나 위협 캠페인, TTP를 찾습니다. 디셉션 시스템은 다양한 마이터 어택(MITRE ATT&CK) 프레임워크(클라우드, 엔터프라이즈, 모바일, ICS 등)에 기반해 TTP에 대한 세분화된 관점을 확보할 수 있습니다. 이를 통해 사이버 공격...

포레스터 리서치에 따르면, 데이터를 기반으로 한 인사이트 중심 문화를 가진 조직은 그렇지 않은 조직에 비해 두 자릿수 성장률을 보일 가능성이 3배 정도 높다고 한다. 데이터 중심 문화는 조직을 관리하는 데 필요한 충성도를 증가시킨다. 데이터 컬처 조직이라면, 의사 결정 배경의 데이터와 분석 결과를 공유함으로써 기업 계획을 실행하는 데 전념할 수 있으며...

디지털 트윈이 제조, 항만, 교통, 건물, 에너지, 조선 등의 산업 분야에서 제품 디자인, 성능 시뮬레이션, 자율 주행, 작업장 계획 효율화, 물류창고 관리 등에 활용되어 오고 있습니다. 2000년 초 디지털 트윈이 소개된 이래, 부분적으로 사용되어 오긴 했지만, 요즘 다양한 분야에서 각광받고 있는 것은 새로운 분야에 디지털 트윈을 구체화하고 적용할 ...

안녕하세요. 블로그에는 처음 인사 드리는 올리브영 모바일앱개발팀 윌입니다. 이번 포스트에서는 스위프트 5.9에 등장한 신기능: 스위프트 매크로를 소개합니다. 이 내용은 Let'Swift 202…

안녕하세요. IT연구소 서비스개발팀 빌링파트 오명학입니다. 우연한 계기로 제로베이스라는 코딩 부트 캠프에서 취준생들을 위한 질문과 관련하여 인터뷰 제의가 들어와 진행하게 되었습니다. 대단한 내용은 없다 보니, 많이 부끄럽긴 하지만 개발자가 되기 위해 준비중인 취준생 분들께서 보신다면 좋을것같아 인터뷰 전문을 사람인 블로그를 통해 공유해보고자 합니다. ...

게임이나 서비스를 출시할 때 '성능 최적화'를 이끌어 낸 서버란, 주어진 장비 스펙을 최대한 효율적으로 사용하는 서버를 의미합니다. 그런 의미에서 지금까지 CPU 이용률을 단순하게 고민하셨던 분이라면 서버 성능 최적화를 위한 더 디테일한 성능 측정을 해보면 어떨까요. The post CPU 이용률의 두 가지 얼굴 – CPU 코어 사용량(Us...

챗GPT의 급부상은 2023년 가장 중요한 화두입니다. 핵심 논제는 생성형 AI 챗봇과 LLM이 사이버보안에 미치는 잠재적인 영향입니다. 민감한 비즈니스 정보를 첨단 자가학습 알고리즘과 공유하는 부분에 대한 우려부터 이를 사용하여 공격을 강화하는 악의적 행위자에 이르기까지 새로운 AI 기술이 가져올 수 있는 보안 위험에 대해서는 많은 논란이 있습니.

안녕하세요. 올리브영 품질관리를 담당하는 QA파트의 Hyun입니다. 올리브영 QA파트는 수동 테스트 이외에 UI 테스트 자동화, HealthCheck, 성능 테스트를 수행하고 있습니다. 그중 이번 글에서는 UI…

생성형 AI는 현재 연구 개발, 공정 최적화, 시장 예측 등 다양한 분야에서 기존의 방식을 혁신하고 있으며, 이러한 기술의 급격한 발전은 우리의 사고방식과 기술에 대한 접근 방식을 바꿀 것으로 보입니다. 단순히 새로운 기술이나 도구를 제공하는 것을 넘어서, 우리 사회의 가치 체계와 구조 자체에도 변화를 불러오고 있기 때문입니다.

상품 색인 파이프라인 소개 안녕하세요. 다나와에서 검색 서비스를 개발하고 있는 곽명환 입니다. 오늘은 검색 개발팀에서 사용하고 있는 동적 색인 서비스의 흐름과 해당 서비스의 문제점, 해결 방안을 소개해 보도록 하겠습니다. 다나와에서는 약 11억건의 상품 데이터를 보유하고 있습니다. 대용량 데이터를 실시간에 가까운 속도로 처리하고, 전문 검색 등이 가능...

- 팝업은 어떨때는 닫을 수 없고, 어떨때는 닫을 수 있을까요?- 팝업에 X버튼은 보여주는게 맞을까요?- 팝업마다 달랐던 동작에 대한 기준을 명확하게 정한 UX스터디를 공유해드립니다.안녕하세요.헤이딜러 안드로이드팀 박상권입니다.앱을 개발하다보면 기획자/디자이너/개발자가 팝업과 관련된 아래와 같은 대화를 자주 나누게 됩니다.“이 팝업은 바깥쪽 누르면 닫...

스켈레톤 로딩, 언제 사용해야 할까? — 헤이딜러 UX 스터디- ‘스켈레톤 로딩’을 어떤 기준으로 사용하기로 결정했는지에 대해 공유합니다- 그런데 용어는 Shimmer일까요? Skeleton일까요?안녕하세요.헤이딜러 안드로이드팀 박상권입니다.지금 이 글을 읽는 여러분들은 아래질문에 답하실 수 있으신가요?“스켈레톤 로딩은 어떤 화면에서 사용해야 할까?”...

닫기와 뒤로가기, 어떻게 다를까? — 헤이딜러 UX 스터디- 뒤로가기의 종류(하이어라키 백, 히스토리백)에 대해 알아보고- ‘닫기'와 ‘뒤로가기'를 어떤 기준으로 사용하기로 결정했는지에 대해 공유합니다.안녕하세요.헤이딜러 안드로이드팀 박상권입니다.지금 이 글을 읽는 여러분들은 아래질문에 답하실 수 있으신가요?“저 화면에서는 [X]버튼인데,왜 이 화면에...

헤이딜러 UX 스터디 이야기 (소개)안녕하세요.헤이딜러 안드로이드팀 박상권입니다.문제앱을 만들면서 모두가 고민했지만 누구도 명확하게 정하지 않았던 문제들이 있습니다.[기획자 / 디자이너 / 개발자] 모두가 뭐라 설명할 수는 없지만느낌적인 느낌으로 그때그때 정해졌던 화면 UI/UX들이 많았는데요.🤔- “저 화면에서는 [X]버튼인데, 왜 이 화면에서는 [...

디지털 트윈이 제조, 항만, 교통, 건물, 에너지, 조선 등의 산업 분야에서 제품 디자인, 성능 시뮬레이션, 자율 주행, 작업장 계획 효율화, 물류창고 관리 등에 활용되어 오고 있습니다. 2000년 초 디지털 트윈이 소개된 이래, 부분적으로 사용되어 오긴 했지만, 요즘 다양한 분야에서 각광받고 있는 것은 새로운 분야에 디지털 트윈을 구체화하고 적용할 ...

안녕하세요~! 커머스 서비스 개발팀 백엔드 개발자 酒(주)술사 하라버지입니다. 커머스 서비스 개발팀에서 담당하고 있는 전시영역에는 많은 GNB탭이 존재합니다. 그 중에서도 제가 이번에 소개드리고자 하는 부분은 현재 서비스 개편을 준비중인 랭킹GNB…

오늘날 기업의 중요한 과제로 꼽히는 ESG는 탄소 중립을 선언하거나, 공급업체의 지속가능성 요건을 재평가하고, DEI(Diversity, Equity, Inclusion) 이니셔티브를 정립하는 활동으로 구성되며, 비즈니스의 미래에 실질적인 영향을 행사합니다 그리고 데이터 기반의 인사이트를 제공하고 목표 진행도를 측정할 수 있다는 점에서 IT는 모든 E...

안녕하세요, 플레이스 리뷰플랫폼 개발팀 강준우입니다.저희는 네이버 플레이스 서비스인 MY플레이스를 포함해, LINE PLACE, Y!Map 등으로부터 등록된 방문자리뷰를 저장 및 관리하는 플랫폼 팀입니다. 리뷰 각 항목엔 여러 부가정보를 함께 태깅하고 있는데요, 이번에 전체 태깅프로세스를 재설계해 업데이트 부하 67%를 줄이는 등의 개선을 이룰 수 있...

삼성SDS는 다양한 업무 전문성을 기반으로 기업에 특화된 생성형 AI Use Case를 도출하고, 마이크로소프트, 네이버클라우드, 엔비디아 등과의 강력한 파트너십과 삼성 클라우드 플랫폼 및 FabriX를 기반으로 『Simply Fit, Simply Chat』을 실현하고 있습니다.

과거에 스마트 팩토리는 주로 생산성 향상, 불량률 감소, 원가 절감, 납기 단축이라는 제공자의 효율 관점 위주로 설명되어 왔습니다. 그러나 궁극적으로 첨단 기술과 초연결 네트워크 등의 기술 발전으로 생산자 관점의 효율뿐 아니라 소비자 관점의 맞춤형 제품 생산까지 가능한 스마트 팩토리의 모습으로 변화하고 있습니다. 제조 서비스, 공장 서비스로 일컫는 F...
안녕하세요, 뱅크샐러드 웹 프론트엔드 챕터의 민찬기입니다. gRPC…