본문 바로가기
728x90

🗂️CS & Other20

[ColorScripter] 글 작성 시 소스코드 디자인 변경 인터넷에 네이버 블로그, Tistory 등 글을 작성할 때 Color Scripter를 활용하면 더욱 보기 쉽고 이쁘게 코드를 작성할 수 있다. Action Script, ASP, C, C#, CSS, HaXe, HTML, Java, JavaScript, JSP, Objective C, Perl, PHP, Python, Ruby, SQL, Swift, Visual Basic 등 다양한 언어를 사용하여 소스코드를 작성할 수 있도록 지원한다. 또한 네이버 블로그 등 태그가 지원되지 않아 Syntax HighLighter를 사용할 수 없는 곳에서도 사용할 수 있으며, 간단한 설정만으로 자신이 원하는 방식으로 소스코드를 하이라이팅 할 수 있다. 웹 사이트 > https://colorscripter.com/ Co.. 2023. 10. 26.
[SSO] SSO(Single Sign-On) 개념 정리 SSO는 사용자가 여러 애플리케이션 또는 서비스에 대해 하나의 인증 정보로 로그인할 수 있는 인증 메커니즘으로 보안 강화 및 인증, 권한 부여 솔루션 등으로 활용된다. 특징 및 장점 단일 인증 정보: 사용자는 SSO시스템을 통해 단일 인증 정보(id,pw)를 입력하여 여러 서비스에 접근할 수 있다. 사용자 경험 향상: 여러 번의 로그인 절차를 거치지 않고도 여러 서비스에 쉽게 액세스할 수 있다. 보안 강화: 하나의 강력한 인증 수단을 사용하므로, 다양한 애플리케이션에서 사용자 인증 정보를 관리하는 데 필요한 보안 수준을 높일 수 있다. 관리 용이성: 사용자 인증 정보를 중앙 집중화하여 관리자가 액세스 권한을 효과적으로 관리할 수 있다. 단점 의존성: SSO 시스템이 다운될 경우, 여러 서비스에 대한 액세.. 2023. 10. 20.
[디지털 공학 응용] 중간 시험 #시험 문제 1. pwm 원리와 카운터 컴퍼레이터 매치를 설명하시오) - pwm(펄스 폭 변조): 디지털 신호를 사용하여 아날로그 신호를 흉내내는 기술로 일정한 주기로 반복되는 신호를 생성하며, 펄스의 폭을 조절하여 평균 출력값을 변화시킨다. 즉 신호를 일정 주기마다 켜고 끄는 것으로 아날로그 값을 나타낸다. 이를 통해 모터 속도 조절, 밝기 조절 가능. - 카운터(counter): 일정한 주기로 증가/감소하는 값을 가지는 레지스터. - 컴퍼레이터(comparator): 카운터의 현재 값과 비교하여 특정 조건을 검사. - 매치(match): 컴퍼레이터가 특정 조건을 검사한 결과가 만족할 때 발생하는 이벤트. => counter값을 comparator값과 비교하여 일치하는 경우 매치 이벤트를 발생시키는 기.. 2023. 10. 18.
[CS] Regular Expression. 정규 표현식 💡정규 표현식이란? 정규 표현식(Regular Expression, RegExp)은 문자열에서 특정한 규칙(패턴)을 갖는 문자열을 찾거나, 대체하거나, 추출하는 데 사용되는 문자열 패턴의 표현 방법이다. 특징 - 일반적으로 텍스트 검색과 문자열 처리에 사용되며, 다양한 프로그래밍 언어에서 지원된다. - 특정한 패턴을 나타내는 문자열을 일괄적으로 처리하거나, 특정한 패턴에 대한 검색 또는 추출을 쉽게 수행할 수 있다. 문자 정규 표현식에서는 다양한 문자를 조합하여 표현할 수 있다. 1. 일반문자 a, b, c, ..., z, A, B, C, ..., Z: 알파벳 소문자와 대문자 0, 1, 2, ..., 9: 숫자 _, -, ., +, 등: 기호 2. 메타문자 . (점): 어떤 문자 하나와 일치합니다. (별.. 2023. 9. 23.
[CS] Garbage Collection. 가비지 컬렉션 💡가비지 컬렉션(Garbage Collection) 이란? 프로그램에서 동적으로 할당된 메모리 중에서 더 이상 사용하지 않는 메모리를 탐지하고 해제하는 자동화된 메모리 관리 기술이다. 사용 이유 프로그램에서 메모리를 사용하다보면, 메모리를 해제하는 코드를 작성하지 않으면 사용되지 않는 메모리가 계속 쌓여서 메모리 누수(Memory leak)가 발생할 수 있다. 이러한 문제를 해결하기 위해서 가비지 컬렉션은 필수적이다. 가비지 컬렉션은 프로그램에서 사용 중인 메모리 영역에서 더 이상 사용하지 않는 객체(인스턴스)를 탐지하고, 자동으로 해당 객체가 차지하고 있는 메모리를 해제한다. 이 과정에서 프로그램이 일시 중단되는 시간(Stop the World)이 발생할 수 있으며, 이 시간이 길어지면 성능 문제가 발.. 2023. 9. 23.
[Jwt] 토큰 기반 인증(JWT)이란? 토큰 기반 인증(JWT) 사용 이유 [ 세션 기반 인증 시스템의 문제점 ] 1. 세션 사용자가 인증을 할 때, 서버는 이러한 정보를 저장해야 하고 이를 세션(Session)이라고 부른다. 대부분의 경우에는 메모리에 저장하는데, 로그인 중인 사용자가 늘어날 경우에는 서버의 RAM에 부하가 걸리게 된다. 이를 피하기 위해 데이터베이스에 저장을 하기도 하는데, 이러한 방식 역시 데이터베이스에 무리를 줄 수 있다. 2. 확장성 사용자가 늘어나게 되면 더 많은 트래픽을 처리하기 위해 여러 프로세스를 돌리거나 컴퓨터를 추가하는 등 서버를 확장해야 한다. 세션을 사용한다면 세션을 분산시키는 시스템을 설계해야 하지만 이러한 과정은 매우 어렵고 복잡한다. 3. CORS(Cross-Origin Resource Sharin.. 2023. 9. 8.
[Security] XSS 💡 XSS (Cross-Site Scripting) XSS(Cross-Site Scripting)이란 웹 애플리케이션에서 일어나는 취약점으로 관리자가 아닌 권한이 없는 사용자가 웹 사이트에 스크립트를 삽입하는 공격 기법이다. 악의적인 사용자가 리다이렉션 스크립트를 주입하기도 하고, 사용자의 쿠키를 탈취하여 세션 하이재킹(Session Hijacking) 공격을 수행하기도 한다. 1. Persistent(or Stored) XSS 지속적으로 피해를 입히는 XSS 공격 기법 웹 애플리케이션에서 XSS 취약점이 있는 곳을 파악하고, 악성 스크립트를 삽입 (게시판) 삽입된 스크립트는 데이터베이스에 저장이 되어 사용자들의 쿠키를 탈취하거나 다른 사이트로 리다이렉션 시키는 공격을 한다. 2. Reflected XS.. 2023. 8. 30.
[Security] XPATH Injection 💡 Xpath란? XPath(XML Path Language)는 W3C의 표준으로 확장 생성 언어 문서의 구조를 통해 경로 위에 지정한 구문을 사용하여 항목을 배치하고 처리하는 방법을 기술하는 언어이다. XML 표현보다 더 쉽고 약어로 되어 있으며, XSL 변환(XSLT)과 XML 지시자 언어(XPointer)에 쓰이는 언어이다. XPath는 XML 문서의 노드를 정의하기 위하여 경로식을 사용하며, 수학 함수와 기타 확장 가능한 표현들이 있다. Ex > en.wikipedia.org de.wikipedia.org fr.wikipedia.org pl.wikipedia.org en.wiktionary.org fr.wiktionary.org vi.wiktionary.org tr.wiktionary.org /w.. 2023. 8. 30.
[Security] Database Backdoors 💡 Database Backdoors란? 말 그대로 ‘뒷문’이라는 의미로 백도어를 통해 정상적인 인증 절차를 거치지 않고, 컴퓨터와 암호 시스템 등에 접근할 수 있도록 하는 방법이다. 백도어는 시스템 설계자나 관리자에 의해 개발 등의 이유로 인해 고의로 남겨진 시스템의 보안 허점이다. Ex> 값을 조회하면서 sql문장을 하나 더 사용해 salary를 update시킨다. 101; update employee set salary=100000 where userid=101 id 입력 칸에 이렇게 입력하게 되면 id가 101인 사람을 조회하면서 salary를 100000으로 업데이트 시킬 수 있다. 2023. 8. 30.
728x90