AlpacaHack Logo
Sign InSign Up
Daily AlpacaHack

A CTF challenge series with fun puzzles to enjoy every day

What is Daily AlpacaHack?

We regularly publish simple, beginner-friendly or educational CTF challenges!

Join Anytime

Solve each challenge within its time window to appear on the leaderboard.

Not a Competition

Discussion with friends or AI is welcome (account sharing is prohibited).

Solution Sharing Rules

Sharing solutions is allowed only after the challenge period has ended.

Solve stats

0

/8

No solved challenges yet.

Sign In to view your player stats

Today's Challenge
tchentchen
True or False 2
Misc
Hard
16 solves
Submissions (latest 3)
pppp4649
pppp4649

SOLVED!

Aug 13, 4:59 AM

a01sa01to

SOLVED!

Aug 13, 4:34 AM

Leaderboard

Try the first challenge

Is this your first CTF? Let's begin by tackling the first challenge released on Daily AlpacaHack.

View challenge
admin
AlpacaHack 2100
Misc
Welcome🌱
2,103 solves
Upcoming challenges reveal the , , and in advance.
Prev

Aug 2026

Next
Solved
Unsolved
Upcoming
Mon
Tue
Wed
Thu
Fri
Sat
Sun
27
tchentchen
RFC100008
Web
Easy🌱
123 solves
28
2501
One More Approval
Crypto
Medium
59 solves
29
2501
zen.zip
Misc
Medium
65 solves
30
2501
Anyrunner
Misc
Medium
56 solves
31
tchentchen
Small Image Uploader 2
Web
Medium
58 solves
1
admin
Día Nacional de la Alpaca
Misc
Welcome🌱
179 solves
2
2501
Password, Please
Misc
Easy🌱
145 solves
3-4
arkark
Long Long Flag Printer 2026
Misc
Medium
82 solves
5
pppp4649pppp4649
Happy Birthday
Crypto
Easy🌱
94 solves
6-8
hiikunzhiikunz
AESAESAESAESAESAES
Crypto
Hard
53 solves
9-10
tchentchen
Not so Pyf**k
Misc
Medium
70 solves
 
tchentchen
Not so Pyf**k
Misc
Medium
70 solves
11-12
baumroll1234
Fermat's Last Theorem
Misc
Medium
66 solves
13-15
tchentchen
True or False 2
Misc
Hard
16 solves
16
Coming soon
17
Coming soon
18
Coming soon
19
Coming soon
20
Coming soon
21
Coming soon
22
Coming soon
23
Coming soon
24
Coming soon
25
Coming soon
26
Coming soon
27
Coming soon
28
Coming soon
29
Coming soon
30
Coming soon
31
Coming soon
1
Coming soon
2
Coming soon
3
Coming soon
4
Coming soon
5
Coming soon
6
Coming soon

Want a harder challenge?

Go to B-SIDE

Writeups

Writeup for Fermat's Last Theorem

toshiconner

ja
Fermat's Last Theorem

5 hours ago

power

Writeup for simpleoverflow

ja

2026/08/09 12:15

power

Writeup for a fact of CTF

ja

2026/08/09 12:13

kirehash

Writeup for Cache Me If You Can 2

Rows:

Compile time flag checker

Topic: C++Released: Jul 12, 2026

59 solves
Rev
Hard6.5

by

tan90909090

tan90909090

It can only be compiled with a correct flag.

Beginner Hint 1: C++ Features
  • chal.cpp uses various C++ language and library features.
    • The constexpr keyword indicates that variables or functions can be calculated at compile time.
    • The static_assert keyword checks if a condition is true, and shows an compile-error message if it does not; in chal.cpp, it is used as a flag checker.
    • The template keyword allows to abstract of type arguments and non-type arguments for functions and types.
    • The std::index_sequence type represents a sequence of size_t elements at the type level. std::make_index_sequence can be used to create a sequence starting from 0 with a specified number of elements.
    • The std::integer_sequence type represents a sequence of elements of a specified type at the type level; in chal.cpp, it is used as a sequence of std::uint8_t values.
    • Syntax like std::size_t... I or std::index_sequence<I...> within a template function represents a feature known as parameter packs. Within the function, syntax such as F(I)... is used to expand the parameter pack.
    • Syntax like [](std::size_t i) { return input_string_view[i]; } represents C++ lambda expression; in chal.cpp, it is used as the F type argument for my_make_sequence_t.
    • The decltype keyword retrieves the type of a value; in chal.cpp, it is used to recover the type from a std::integer_sequence value.
    • The std::is_same_v variable indicates whether two type arguments are identical; in chal.cpp, it is used as a flag checker.
  • You may want to investigate the details further if necessary.
Beginner Hint 2: Approach to Solving the Challenge
  • It is a good idea to start by understanding the calculations performed by the convolve_t type, the convolve_impl function, and the convolve_element function. In particular, the relationship between the sequence lengths of the two type arguments A and B for convolve_t and the sequence length of convolve_t itself is crucial.
  • Let's try examining the elements of the sequence generated by the odd_random_sequence_t type; using IDE features might make this easier.
compile-time-flag-checker.tar.gz

Please sign in to submit the flag.

descriptionsolveswriteups